텍스트 파일을 암호 해독 한 프로그램에서 OpenSSL을 사용하고 프로그램을 시작할 때마다 새 텍스트와 새로운 암호화 키로 다시 암호화합니다. 나는 안전하게 실행중인 프로그램의 인스턴스 사이에 키를 저장하고 싶습니다. 이 작업을 쉽고 안전하게 수행 할 수있는 방법이 있습니까?안전하게 AES 키 저장
답변
응용 프로그램이 설치되어있는 컴퓨터에서 하드 코어 공격을 예상하지 않는 경우, 당신은 당신의 응용 프로그램 내부에 항상 하드 코드 당신이 순서대로 사용하는 것이 다른 암호화 키를 안전하게에서 이전 세션 AES
키를 저장할 수 있습니다 앱을 닫고 앱을 시작할 때 파일 시스템을 검색하기 전에 파일 시스템을
당신이 하나의 문자열로 harcoded 키를 저장하지 않는 대신 여러 문자열에서 당신은 함수
파일을 저장할에 연결하여 그 다음의 경우 당신은 조금에게 보안을 향상시킬 수 격리 저장소 또는 응용 프로그램 폴더 대신 Windows/Temp와 같은 상대적으로 "알 수없는"/ 인기없는 위치에
당신은 비대칭 키 알고리즘을 사용합니다 (이 경우 크래킹이 더 어려워집니다.)
당신은 대상 호스트가 TPM 칩이있는 경우뿐만 아니라 키
는
이것은 회사에서 일하는 회사 (대형 은행)가 응용 프로그램별로 발행 된 키 암호화 키로 인한 난해한 암호화를 수행하는 방법입니다. 난독 화 된 바이트 코드를 리버스 엔지니어링하는 것만 큼 쉬운 일은 아닙니다. 이제 HSM과 함께 PKI를 사용하여 키를 저장하도록 권장합니다. –
모호성을 통한 보안은 보안이 아닙니다. 공격자가 키를 제외한 모든 항목에 액세스 할 수 있다고 가정해야합니다. –
@JulieinAustin은 원칙적으로 합의했다. 애매함에만 의존하지 마십시오. 그러나 무언가를 너무 소중하게 보호하지 않으면 무명이 많이 도움이됩니다. 공격자는 끊임없이 겁을 먹을 것입니다. 또한, "잘못된 지시": 침입자가 보안 위협에 대해 많은 시간을 낭비하도록 오도 할 수 있다면 침입자를 방해 할 수 있습니다. 이것은 "귀중품이 들어있는 거실의 그림 뒤에 숨어있는 거대한 금고이지만 중요한 재무 문서는 아닙니다." – ToolmakerSteve
프로그램이 안전한 지역에없는 경우에는 간단한 방법이 없습니다 (바이너리 코드는 포함됩니다 아무 키나하거나 정의하는 어떤 알고리즘을 찾기 위해 검사 할 수있는 경우) :
당신은 수를 프로그래밍 방식으로 키를 난독 처리하고 파일에 저장하지만,이 경우 난독 화 알고리즘을 깨면 키를 찾을 수 있습니다. 그래서 이것은 암호화 알고리즘의 강도를 줄입니다. 갈 좋은 방법이 아닙니다.
또한 프로그램에 포함 된 정적 키 (B라고 함)를 사용하여 키 (여기서는 A라고 함)를 암호화 할 수도 있지만이 경우 매번 키 A를 변경하지 않아도됩니다. 이것은 프로그램에 내장 된 키 B를 찾는 것이 디스크에 저장된 암호화 된 키 A를 찾는 데 충분하기 때문입니다. 이것은 만족스럽지도 않을 것이다.
더 복잡한 솔루션을 고려할 때는 좀 더 많은 상황 (공격의 출처, 파일의 수명주기 등)을 알아야합니다. 그러나 멀리 가기 전에 ... 그렇게 멀리 갈 필요가 있습니까? 이것이 의미하는 바는 : 당신의 프로그램이 크래킹 시도의 위험에 처해 있는가? 그리고 그것이 비난 받아야 하는가, 비판적 일까? 균열이 없거나 중요하지 않은 경우 위의 두 번째 옵션만으로 충분합니다.
, 당신이 그것을 활용할 수있는 파일에 다른 물건 (가짜)를 넣습니다.
- 1. AES 키 저장
- 2. AES 암호화 및 키 저장?
- 3. OpenSSL - AES 키 찾기
- 4. RSA의 장점 AES 키 암호화
- 5. BlackBerry의 AES 암호 키 강도
- 6. 키 생성 AES 암호화 심비안
- 7. 안드로이드에서 개인 키 저장
- 8. 안전하게 암호를 저장
- 9. 안드로이드에 비밀 키 저장
- 10. 텍스트 파일을 안전하게 JAR에 저장
- 11. 자바 AES 256 보안 키 생성기 불법 키 크기
- 12. 데이터베이스에 비밀 키 저장 및 검색
- 13. 어떻게 키/IV 쌍을 안전하게 저장하고 검색합니까?
- 14. 어셈블리에서 AES 구현
- 15. AES_ENCRYPT 키 저장
- 16. 데이터베이스에 계정 잔액을 안전하게 저장 하시겠습니까?
- 17. 비교를 위해 안전하게 생체 정보 저장
- 18. 자격 증명이 보고서 서버에 안전하게 저장 됨
- 19. 코코아 애플리케이션에 안전하게 사용자 인증 정보 저장
- 20. 내 정보 저장 확인란 : 인증 정보를 안전하게 저장 하시겠습니까?
- 21. AES BadPaddingException
- 22. 레일 애플리케이션 용 공유 키 저장
- 23. .Net (C#)을 사용하여 Windows에 AES 키를 안전하게 저장하는 방법은 무엇입니까?
- 24. AES 명령 줄에서만 AES의 잘못된 키 크기 오류가 발생했습니다.
- 25. AES - 키를 생성하고로드하는 중 키에 잘못된 키 예외가 발생합니다.
- 26. WinCrypt 및 CryptImportKey가있는 하드 코드 된 AES-256 키
- 27. AES 동등한?
- 28. AES 암호화가
- 29. 암호화 키 저장 - 모범 사례?
- 30. 응용 프로그램 설정에서 키 저장
두 개의 개별 실행 사이에 키를 저장하거나 여러 실행중인 인스턴스간에 키를 공유하려면 OpenSSL을 TPM을 사용하도록 구성 할 수 있습니까? –
두 번의 개별 실행 사이. – HighLife
외부 하드웨어 없이도 해결할 수있는 매우 어려운 문제입니다. 많은 노력이 필요합니다. –