프론트 엔드에 object
을 암호화하고 암호화 된 데이터로 HTTP POST 요청을 보냅니다. 백엔드에서이 객체의 암호를 해독하려하지만 실패합니다.디지털 봉투 루틴 : 잘못된 암호 해독
테스트는 통과되지만 실제 프로젝트에 통합 할 때이 decrypt
방법은 오류와 함께 실패 : 여기
는 관련 코드입니다 :Error: error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt at Error (native) at Decipher.final (crypto.js:158:26) at Object.exports.decrypt.error [as decrypt]
export const decrypt = text => {
if (!text)
throw Error('Decrypt: Text may not be blank');
const decipher = crypto.createDecipher(encryptAlgorithm,
encryptionKey)
let decrypted = decipher.update(text, textEncodingHex,
textEncodingUtf8)
decrypted += decipher.final(textEncodingUtf8)
return decrypted
}
그리고 내가 그것을 사용하고 방법이있다
authSignInWeb(): any {
return async (request: any, reply: any) => {
try {
let decrytedRequestPayload = request.payload;
if (process.env.REACT_APP_ENCRYPT) {
decrytedRequestPayload = JSON.parse(cryptoHelper.decrypt(request.payload))
}
...
} catch (error) {
reply(error);
...
}
};
};
그냥, 그냥 HTTPS 작동 사용하지 왜 안전합니다. – zaph