내장 메서드 (MessageDigest)에서 java를 사용하여 SHA1을 구현하려고합니다. 그러나 예제에서는 Initial Vector를 선언 할 메소드 매개 변수를 찾지 못했습니다. 아무도 이것에 대해 나를 도울 수 있습니까 ???? 사전에 감사드립니다 ......Java SHA1이 초기 벡터를 사용하지 않는 이유는 무엇입니까?
답변
나는 암호 작성 전문가가 아니지만 논리적으로 생각하면 어떤 소음이 다이제스트에 필요합니까? 다이제스트 지점은 각 입력 메시지에 대해 임의의 결과를 보이는 것처럼 보이지만 다른 해시와 마찬가지로 동일한 입력에 대해 동일해야합니다. IV는 암호화 알고리즘을 수정하여 같은 입력에 대해 다른 결과를 갖도록 사용됩니다.
그래서 저는 IV가 없을 것이라고 생각합니다.
올바른 - 메시지 요약은 초기화 벡터를 사용하지 않습니다. IV는 동일한 키를 사용하여 여러 번 암호화 된 단일 값이 동일한 암호 텍스트가되지 않도록 암호화하는 동안 사용됩니다. 해시 등가물은 소금입니다. – atk
@atk 소금은 PBE의 일부로 다이제스트 정의가 아니라 생각합니다. SHA1 RFC에 소금에 대한 언급은 여기에 나와 있지 않습니다. http://www.faqs.org/rfcs/rfc3174.html 그러나 다시, 저는 현장에서 전문가가 아닙니다. –
Alex, 미안, 내가 잘 모르겠다. 나는 소금이 해시 알고리즘의 일부가 아니라 해시를 통과하는 추가 데이터라는 것을 암시하지 않습니다. – atk
- 1. Java Label Statement를 사용하지 않는 이유는 무엇입니까?
- 2. Emacs를 사용하지 않는 이유는 무엇입니까?
- 3. typekit을 사용하지 않는 이유는 무엇입니까?
- 4. loadURIWithFlags가 전달하는 charset을 사용하지 않는 이유는 무엇입니까?
- 5. 사소한 초기 값으로 벡터를 채우는 방법은 무엇입니까?
- 6. SQLAlchemy보다 SQLObject를 사용하지 않는 이유는 무엇입니까?
- 7. GWT가 gwt-dispatch를 사용하지 않는 이유는 무엇입니까?
- 8. div가 자동 너비를 사용하지 않는 이유는 무엇입니까?
- 9. 내 테이블에서 색인을 사용하지 않는 이유는 무엇입니까?
- 10. C++에서 malloc을 사용하지 않는 이유는 무엇입니까?
- 11. 2010 년에 doctypes를 사용하지 않는 이유는 무엇입니까?
- 12. ld가 '-rpath-link'옵션을 사용하지 않는 이유는 무엇입니까?
- 13. HTML 5 doctype을 사용하지 않는 이유는 무엇입니까?
- 14. CMFCMenuBar가 가속기 테이블을 사용하지 않는 이유는 무엇입니까?
- 15. HTTP 요청에 Winsock을 사용하지 않는 이유는 무엇입니까?
- 16. 여기에 POST 방법을 사용하지 않는 이유는 무엇입니까?
- 17. COM 개체에서 IDisposable을 사용하지 않는 이유는 무엇입니까?
- 18. Qt가 예외 처리를 사용하지 않는 이유는 무엇입니까?
- 19. 데이터베이스 연결 풀링을 사용하지 않는 이유는 무엇입니까?
- 20. mysql이 내 색인을 사용하지 않는 이유는 무엇입니까?
- 21. Nservicebus가 WCF를 사용하지 않는 이유는 무엇입니까?
- 22. Eclipse에서 내 프로젝트에 지정한 컴파일러를 사용하지 않는 이유는 무엇입니까?
- 23. Java - 마스크가 작동하지 않는 이유는 무엇입니까?
- 24. Java Desktop Application을 실행하지 않는 이유는 무엇입니까?
- 25. 스레드에서이 Java 루프가 작동하지 않는 이유는 무엇입니까?
- 26. COM에서 정적 빈 BSTR을 사용하지 않는 이유는 무엇입니까?
- 27. 더 많은 사람들이 Grails를 사용하지 않는 이유는 무엇입니까?
- 28. 벡터를 반환하는 방법 java
- 29. 포트 포워딩을 사용하지 않는 Java P2P?
- 30. System.Windows.Forms.WebBrowser가 Java 스크립트를 사용하지 않는 것 같습니다.
SHA-1을 직접 구현하려고합니까? SHA-1 해시를 수행하는 기능이 Java에 내장되어 있으므로 꼭해야합니까? 이것이 할당을위한 것이 아니라면 해시 알고리즘의 구현을 롤링하는 것은 이미 시도되고 테스트 된 구현이 사용 가능한 경우 나쁜 생각입니다. –
무엇의 초기 벡터? update() 메서드를 사용하여 MessageDigest 인스턴스에 데이터를 제공합니다. 코드 샘플을 게시 할 수 있습니까? – Perception