우선 rsa키쌍을 하나 만들고 이 키가지고
pkcs#1 v2.0 즉 pkcs12로 내가 원하는 데이터 블럭 예를 들자면 {0x01, 0x02, 0x03} 이런 문자열을 암호화해서
내가 그 암호화된 데이터를 헥사데이터로 볼 수 있는 방법이 있음?
우선 rsa키쌍을 하나 만들고 이 키가지고
pkcs#1 v2.0 즉 pkcs12로 내가 원하는 데이터 블럭 예를 들자면 {0x01, 0x02, 0x03} 이런 문자열을 암호화해서
내가 그 암호화된 데이터를 헥사데이터로 볼 수 있는 방법이 있음?
왠지 글에서 X-Y Problem 삘이 강하게 난다. ㅡㅡ;;
X-Y Problem이 뭐지; 여튼 저런걸 해야 하는데 적절한 프로그램이 없을까 ㅜㅜ
Command Line Tool로 하는 거면 스위치 찾아서 암호화해서 파일로 뽑아낸 뒤 od -t x1로 보면 될텐데?
형 그거 자세하게 설명 가능함? ㅜㅜ 어제부터하고 있는데 어제도 야근하느라 잠도 별로 못자고 죽을거같음 ㅜㅜ 살려주셈
잠만. 시그윈 깔아볼게 ㄱㄷ
시그윈? 그게 필요한건가 그럼 나도 깔아야지
구글 검색하니까 관련 정보 많이 나오네.
https://rietta.com/blog/2012/01/27/openssl-generating-rsa-key-from-command/
openssl genrsa로 개인키 생성하고 openssl rsa로 공개키 생성하고 openssl rsautl로 암호화하면 되는 모양.
openssl genrsa -des3 -out private.pem 2048
openssl rsa -in private.pem -outform PEM -pubout -out public.pem
그 다음 echo -n -e '\\001\\002\\003' > in.bin으로 암호화할 3바이트 데이터 파일 생성.
그리고 이제 중요한 암호화 복호화 명령어인데.
와 파일생성을 저렇게 하는구나...
공개키로 암호화하는 명령어는 openssl rsautl -encrypt -in in.bin -out out.bin -inkey public.pem -pubin
암호화 데이터를 헥스로 보고 싶으면 od -t x1 out.bin
이제 개인키로 복호화하는 명령어는 openssl rsautl -decrypt -in out.bin -out out_dec.bin -inkey private.pem 하고 개인키에 걸어놓은 비번 치면 out.bin이 out_dec.bin으로 암호화가 풀림. od -t x1 out_dec.bin 하면 01 02 03 이라고 제대로 나옴.
이제 개인키로 복호화하는 명령어는 openssl rsautl -decrypt -in out.bin -out out_dec.bin -inkey private.pem 하고 개인키에 걸어놓은 비번 치면 out.bin이 out_dec.bin으로 암호화가 풀림. od -t x1 out_dec.bin 하면 01 02 03 이라고 제대로 나옴.
덧글 두 개 씩이나 달렸네. 아무튼 이 방법대로 하면 된다. 난 시그윈으로 했지만 굳이 시그윈이 아니더라도 리눅스 환경이면 똑같이 될거야.
근대 암호화 알고리즘이 PKCS#1 v2.0으로 정해져있는데 그건 또 다른 명령이 필요함?
openssl로 RSA 암호화하면 기본이 PKCS#1이야. 물론 PKCS가 RSA 말하는 거인 건 알지?
그러니 저대로 해도 됨.
아 그렇구나 그럼 뒤에 v2.0은 다른거 별로 없나보네
아 샹. 그렇구나. openssl pkcs12 xxx가 따로 있었네. ㅡㅡ; v2.0이 아니었네.
아 귀찮다. 너가 찾아보렴 (퍽퍽)
넵 ㅜㅜ
알려줘서 고마워여
대충 봤는데 키 생성은 openssl genpkey xxx로 하고 암호화는 openssl pkcs12 xxx로 하는 모양. 자세한 건 xxx 자리에 --help 넣어서 보고 구글 검색도 해 봐.
시그윈 깔아서 힘들게 설명했는데 지금 내가 더 이상 컴퓨터할 시간이 많지 않아서 그럼 ㅋㄷㅋㄷ
넵 많은도움이됫어영