일정 시간 동안 읽을 수없는 상태로 읽을 수있는 디지털 타임 캡슐을 만들고 싶습니다. 예를 들어 키를 비밀로 유지하고 필요한 시간에 공개하기 위해 외부 서비스에 의존하고 싶지 않습니다. 이게 가능해? 그렇지 않다면 그렇지 않다는 증거가 있습니까?
한 가지 전략은 미래의 컴퓨팅 기능에 대한 예측을 기반으로하지만 신뢰할 수 없으며 작업에 얼마나 많은 리소스가 적용되는지 가정합니다.
일정 시간 동안 읽을 수없는 상태로 읽을 수있는 디지털 타임 캡슐을 만들고 싶습니다. 예를 들어 키를 비밀로 유지하고 필요한 시간에 공개하기 위해 외부 서비스에 의존하고 싶지 않습니다. 이게 가능해? 그렇지 않다면 그렇지 않다는 증거가 있습니까?
한 가지 전략은 미래의 컴퓨팅 기능에 대한 예측을 기반으로하지만 신뢰할 수 없으며 작업에 얼마나 많은 리소스가 적용되는지 가정합니다.
답변:
이 문제를 시한 암호 해독이라고 합니다. 일부 참조 / 소개는 다음을 참조하십시오.
우리의 동기는 미리 정해진 양의 시간이 지날 때까지 보낸 사람이 아닌 다른 사람이 메시지를 해독 할 수 없도록 메시지를 암호화하는 것입니다. 목표는 "미래에 정보를 보내는 것"입니다 ...
나는 부분 답변을 제시했지만 명시된 질문에 대한 답변을 엄격하게 말하지는 않습니다. 나는 이것이 가능한 한 가깝다고 생각하지만 확실하지 않습니다.
먼저, 해독에 필요한 키로 캡슐을 인코딩합니다.
열쇠를 쥐기 위해 어떤 종류의 권한을 갖는 방법을 모르겠지만 그 기능을 배포하는 것이 가능합니다. 우리가 열쇠를 n 조각으로 나누면, 우리는 n 당국에 그 조각을 붙잡도록 요청할 수 있습니다. 그런 다음 적절한 시간에 모두 키를 재구성 할 수 있도록 조각을 게시 할 수 있습니다.
이 솔루션은 사용할 수없는 n 개의 권한 중 하나에 취약하지만 m-out-of-n 인코딩을 사용하여 조각을 n 개의 기관에 배포 할 수 있지만 조각 만 게시하려면 m 만 필요합니다.
이 경우에도 정확한 시계를 가진 일부 기관은 올바른 키 관리 서비스를 제공해야합니다. 위에서 제안한 m-out-of-n 이상으로이 가정을 약화시킬 수 있습니까?
나는 이것이 가능한 접근법이라고 생각한다.
무작위로 생성 된 암호를 사용하여 선호하는 암호화 체계를 사용하여 키 세트를 생성하십시오. 여기서 트릭은 암호문입니다. 키는 알려져 있지만 암호를 사용하여 타임 캡슐을 만듭니다.
우리가 솔트 해시를 만들면 오늘날의 컴퓨팅 능력을 사용하여 알려진 솔트와 해시가 주어진 패스 프레이즈를 계산하는 데 약 "n"년이 걸리는 패스 프레이즈를 선택하십시오. 20 년 캡슐을 만들려면 지금부터 20 년 동안 컴퓨팅 성능을 추정하고 캡슐의 대상에 따라 20 년 안에 사용자 나 슈퍼 컴퓨터가 1 개월 계산할 수있는 해시를 만듭니다. 20 년짜리 캡슐의 경우, 15 년 안에 megacorp에 의해 또는 20 년에 사용자에 의해 해독 될 수 있음을 보여줍니다.
무작위 암호 구가있는 키를 사용하여 데이터를 암호화하고 키와 해시 된 암호 구를 저장하고 실제 암호 구를 저장하지 마십시오. 이제 데이터를 보존하면 향후 어느 시점에서 데이터를 복구 할 수있는 컴퓨팅 기능을 갖게 될 것입니다!
나는 암호 전문가가 아니며 엔지니어 일뿐이므로 내 솔루션은 계산보다 물리적이지만 어쨌든 시도해 볼 수 있습니다. 다음 절차를 제안합니다.
그렇다면 분명한 질문이 생깁니다. 칩에 평문 메시지를 저장할 수 있는데 왜 암호화를 사용하지 않습니까? 이에 대한 대답은 고정 길이 키만 거기에 저장되기 때문에 칩의 저장 용량에 영향을주지 않으면 서 평문을 임의로 길게 할 수 있다는 것입니다. 또한 공개 키의 사본을 보관하여 나중에 더 많은 메시지를 생성 한 다음 동시에 잠금 해제 할 수 있습니다. 그러나 그것은 그것에 관한 것입니다.
이를 더욱 안전하게하기 위해 칩에 광 센서를 부착하고 조명 케이스 (또는 도어에 스위치가 부착되어 있거나 다른 탬퍼 감지 메커니즘이있는 경우)에 어셈블리를 동봉하여 센서를 빛에 노출시킬 수 있습니다. 키 삭제를 트리거합니다. 이것은 에칭과 같은 침습적 방법을 사용하여 키를 얻는 것을 방지하기위한 것입니다. 일부 칩은 또한 메모리 위에 다른 필수 회로를 배치하여 개별 비트를 가려서 침습적 판독을 거의 불가능하게하는 방식으로 실리콘 층을 구성했습니다.