Java에서 AES CBC 암호화를 수행하려고합니다. javax.crypto
을 사용하고 있습니다. Cipher
을 초기화 한 후 올바르게 암호화하려면 clear 바이트에 doFinal
만 전화하면됩니까? 또는 update
으로 무엇인가를해야합니까? ,javax.crypto AES 암호화 - doFinal 만 호출하면됩니까?
는 복수의 부분으로부터 완성되는 암호화 또는 복호화 조작
과의 doFinal
에서 암호화를 계속하거나 단일의 부분으로부터 완성되는 조작으로 데이터를 해독 :
문서 갱신 말한다 또는 완료 다중 부분 작업
다중 부분 암호화 란 정확히 무엇을 의미합니까?
그래서 바이트 배열을 BLOCKSIZE 크기의 덩어리로 분리하고 마지막 블록을 제외한 각 블록에서 업데이트를 호출하고 마지막 블록에서 doFinal을 호출해야합니까? 또는 나는 모든 일에 대해 최종 결정을 내릴 수 있습니까? 그것은 나를 위해 모든 것을 할 것입니까? – Kyle
데이터가 인접하지 않으면 여러 업데이트 만 수행하면됩니다. 이미 하나의 연속 블록에이 블록이 있으면 doFinal을 한 번 호출하면됩니다. –
아, 알겠습니다. 암호화를 멀티 파트로 사용하는 이유는 모든 데이터를 완전히받을 때까지 기다리지 않고 데이터를받는 즉시 암호화를 시작하기를 원하기 때문입니다. – Kyle