본문 바로가기
내가만드는것_만든것/프로그램-공개

비밀번호 없이 암호화? JsSimplexCrypt 프로그램!

by Joseph.Lee 2015. 8. 2.

제가 요 일주일간 만든 비교적 [내생각에만]걸작?입니다...ㅋㅋ



1. JsSimplexCrypt 란?

JsSimplexCrypt는 기존의 암호화 프로그램과는 달리 단방향 암호화 프로그램입니다. 그렇담 단방향 암호화란 무었이냐구요? 어떤 분은 Hash을 생각하실 수도 있지만 Hash가 아닌 말 그대로 “암호화”입니다. 본 프로그램은 사용자의 비밀번호를 입력하지 않고도 암호화가 가능한 프로그램입니다. 물론 복호화에는 사용자의 비밀번호가 필요합니다.


2. 어떻게 작동하나?

비대칭 키 암호화 방식인 RSA 알고리즘을 사용합니다.

‘정보파일’에는 RSA[1024bit]개인키가 본인의 비밀번호로 암호화[AES-CBC-256]되어 저장되어 있습니다.

파일 암호화에는 랜덤한 파일키를 생성한 뒤 파일 데이터를 파일키로 암호화[AES-CBC-256]하고 파일키는 RSA 공개키로 암호화되어 암호화된 파일 데이터와 저장됩니다.


3. 어디에 사용하나?

기존의 암호화 프로그램들은 파일을 암호화하는데도 비밀번호가 필요하였습니다. 하지만 이 프로그램을 사용함으로써 타인에게 비밀번호를 알려주지 않고 공개키만 전달하여 파일을 암호화 시켜 전달받을 수 있고, 키보드 보안이 우려되는 상황에서 파일을 암호화하고 싶을 때 비밀번호 입력 없이 파일을 암호화 할 수 있습니다. 또한 다수의 파일을 암호화하고자 할 때에 비밀번호 입력 없이 암호화가 가능하기 때문에 더욱 편리합니다.


4. 주의사항.

‘정보파일’ 혹은 비밀번호 분실 시 암호화한 파일의 복호화는 절대 불가합니다. 따라서 ‘정보파일’과 비밀번호는 절대 분실하면 안 됩니다.

또한 이 프로그램과 관련하여 발생하는 오류 및 손실에 대해서는 제작사 및 제작자가 배상책임이 없음을 이해하며 이에 동의한 것으로 간주합니다.



기능

 - 파일 크기 : 이론상 엄청난 용량도 지원합니다..^^ (64bit = 16EBytes...)

   2GB까진 테스트 하였습니다. 버그가 없나 확인하기 위해 4GB이상도 테스트 해 보겠습니다. 조만간...ㅎ

   * 방금 테스트 해 보았는데 4.31GB을 암호화 하는데 150초가 걸렸습니다. 약 30MB/s 의 속도네요.

     복호화에는 190초. 약 23MB/s 의 속도네요.

     CPU Load는 10% (4Thread에서이니까, 한 쓰레드에서 40%에 해당합니다.)

     Intel AES-NI기능이 있는 CPU인데 도움이 되었는지 모르겠네요.

     OpenSSL 라이브러리가 AES-NI을 지원하는지도 확인해야 겠습니다. (조금 보니 EVP을 사용해야 하나 보네요...)


   * 2015-08-06

     EVP 적용하였습니다.

     1.03GB 파일

     암호화:44초(24MB/s) / 복호화:13초(81MB/s)



TEST PC : Windows 8 / i5-2390T / Intel AES-NI / 3.5인치 HDD에서 암호화/복호화


메인화면 입니다.


처음엔 정보파일을 생성한 뒤 비밀번호를 두번 입력하고 '확인' 버튼을 누르면 정보파일과 비대칭 키가 생성됩니다.

그 후 파일 암호화와 복호화가 가능합니다.


이후에는 정보파일을 연 뒤 그냥 파일 암호화를 하거나

비밀번호를 입력하고 '확인'을 누르면 비밀번호 변경 및 파일 복호화가 가능합니다.


파일 암호화 창

비밀번호를 입력하지 않고도 파일 암호화가 가능합니다!


파일 복호화 창

물론 복호화 시에는 비밀번호가 필요하겠죠?ㅎ

앞의 메인 창에서 비밀번호를 입력하였으면 다시 입력할 필요가 없습니다.




* 추후 추가 예정...

 - 다른 암호화 알고리즘 지원 (비대칭-EC / 대칭-SEED/ARIA/LEA등...)

 - 암호캐시 제거 (메모리에서 비밀번호 제거)

 - Advanced 설정 기능 (파일 데이터 버퍼 크기 설정 등... / 기본 파일 데이터 버퍼는 1MB이다.)

 - 뭐 등등..ㅋ



현재 v1.0.0 ( Beta 버전 ) 입니다.

유료로 할까 하다...(내가 생각하기에 나름 잘만든듯?ㅋㅋ)

광고 넣고 무료로 배포합니다.


***** 2015-08-06 *****

v1.1.0

 - EVP사용


***** 2015-10-11 *****

v1.1.001

 - 비밀번호 변경되지 않는 문제 fix. (이런 중대한 문제점이...ㅠㅠ 비밀번호 바꾸고 info파일을 write을 안했네요..ㅠ)


[v1.1.001]

JsSimplexCrypt.exe



[작성중]

JsSimplexCrypt-소개.hwp


반응형

댓글