2012-10-12 1 views
1

블로우 피쉬 암호화와 관련하여 몇 가지 문제가 있습니다. 웹 로직에 배치 된 Java에서 포틀릿을 개발 중입니다. 나는 BlowFish로 암호화 된 문자열을 인터넷 USB 장치에서 수신한다. nCFB 모드에서 원래의 문자열을 얻어야한다. 복어 해독을 구현했지만, 어떻게 nCFB 모드를 사용하여 해독 할 수 있는지 모르겠습니다. 인터넷에 관한 문서는 거의 없지만 다음과 같은 도구를 찾을 수있었습니다. http://www.tools4noobs.com/online_tools/decrypt/블로시 해독 - nCFB 모드

입력 문자열과 암호를 입력하면 결과가 검색됩니다. 하지만 자바에 할 수 없어

Cipher cipher = Cipher.getInstance("Blowfish/NCFB/NoPadding"); 

NCFB가 인식되지 않기 때문에. 구현 한 결과는

Cipher cipher = Cipher.getInstance("Blowfish/CFB/NoPadding"); 

처음 3 자만입니다. CFB 대신 NCFB 모드를 사용하여 암호를 해독 할 수 있습니까?

http://mcrypt.hellug.gr/lib/mcrypt.3.html에서 nCFB에 관한 약간의 것을 발견 할 수 있었지만 mcrypt PHP 라이브러리에 속합니다.

이렇게 할 수있는 Java API가 있습니까? 아니면 CFB 모드를 NCFB로 사용할 수 있습니까?

안부

답변

2

CFB 모드는 일부 또는 cyphertext 모두 해독 할 때를 피드백 (사이퍼는 피드백). nCFB의 "n"은 얼마만큼 피드백 할 지 알려줍니다. 기본값은 전체 블록입니다. 암호화에 사용되는 n의 값과 해독 알고리즘에 해당 매개 변수를 추가하는 방법을 확인하려면 설명서를 읽어야합니다. 처음 세 문자가 올바르게 해독되었다고 가정 할 때, 확실하지는 않지만 n은 24 비트 일 수 있습니다.

일반적으로 CTR 모드는 CFB보다 문제가 적습니다.

+0

답변 해 주셔서 감사합니다. 나는 결과적으로 정확한 결과를 얻으려고 노력했다. –