나는 Java에서 Python으로 문자열을 암호화하려고하는데, 클라이언트 측에서 Bouncy Castle J2ME 라이브러리를 사용하고 다른 쪽에서는 Python M2Crypto를 사용한다.Java to Python RSA
모든 것이 꽤 좋지만 제대로 해독 할 수 있지만 패딩이 문제입니다.
M2Crypto lib 디렉토리가 (지금까지 내가 말할 수있는) 만이 패딩 제도 나 제공 : no_padding = 3 pkcs1_padding = 1 sslv23_padding = 2 pkcs1_oaep_padding = 4
탄력이 성 J2ME 만 제공하는 반면 : NoPadding OAEPWithAndPadding PKCS5Padding에 SSL3Padding
그래서, 난 둘 사이에 NoPadding을 사용할 수 있지만, 다음 암호 해독 후에 생성받을 문자열은 뒤죽박죽 문자로 가득 에스.
패딩을 정렬하고 싶습니다. 패딩 방식간에 변환하는 방법을 알고 있습니다./가능하더라도 가능합니다.
나를 알아내는 데 도움주세요, 나를 죽이고 있습니다!
내가 그런 것 같아. 필사적으로 시간을 새기고 난 뒤에이 글을 올렸습니다. "BC"공급자와 함께 "RSA/ECB/PKCS1Padding"문자열을 사용하면 PKCS1을 사용하여 Python으로 읽을 수 있습니다. ECB가 필요합니다. 그렇지 않으면 어디서나 쓰레기 문자가 있습니다. 또한 키가 DER 형식인지 확인하고 읽으려면 X509EncodedKeySpec으로 읽어야했습니다. DER = PEM에서 헤더 빼기 (---- BEGIN ...), base64가 해독됩니다. –