암호화를 사용하여 "Time Capsule"을 만들 수 있습니까?


14

일정 시간 동안 읽을 수없는 상태로 읽을 수있는 디지털 타임 캡슐을 만들고 싶습니다. 예를 들어 키를 비밀로 유지하고 필요한 시간에 공개하기 위해 외부 서비스에 의존하고 싶지 않습니다. 이게 가능해? 그렇지 않다면 그렇지 않다는 증거가 있습니까?

한 가지 전략은 미래의 컴퓨팅 기능에 대한 예측을 기반으로하지만 신뢰할 수 없으며 작업에 얼마나 많은 리소스가 적용되는지 가정합니다.


1
장치가 무단 변경되지 않은 것으로 확인되면 반감기 시간이 알려진 (가벼운) 방사성 구성 요소를 사용할 수 있으므로 방사능이 충분히 저하 된 경우에만 액세스 권한을 부여 할 수 있습니다.
Raphael

답변:


5

이 문제를 시한 암호 해독이라고 합니다. 일부 참조 / 소개는 다음을 참조하십시오.

우리의 동기는 미리 정해진 양의 시간이 지날 때까지 보낸 사람이 아닌 다른 사람이 메시지를 해독 할 수 없도록 메시지를 암호화하는 것입니다. 목표는 "미래에 정보를 보내는 것"입니다 ...


7
최소한 논문을 요약 해 주시겠습니까?
svick

5
이 논문은 두 가지 "자연적인"접근 방식에 대해 심도있게 연구합니다. 신뢰할 수있는 제 3자를 사용하거나 수신자가 병렬화되지 않고 대략 적절한 시간이 걸리는 계산을 수행하도록 요구합니다.
a3nm

1

나는 부분 답변을 제시했지만 명시된 질문에 대한 답변을 엄격하게 말하지는 않습니다. 나는 이것이 가능한 한 가깝다고 생각하지만 확실하지 않습니다.

먼저, 해독에 필요한 키로 캡슐을 인코딩합니다.

열쇠를 쥐기 위해 어떤 종류의 권한을 갖는 방법을 모르겠지만 그 기능을 배포하는 것이 가능합니다. 우리가 열쇠를 n 조각으로 나누면, 우리는 n 당국에 그 조각을 붙잡도록 요청할 수 있습니다. 그런 다음 적절한 시간에 모두 키를 재구성 할 수 있도록 조각을 게시 할 수 있습니다.

이 솔루션은 사용할 수없는 n 개의 권한 중 하나에 취약하지만 m-out-of-n 인코딩을 사용하여 조각을 n 개의 기관에 배포 할 수 있지만 조각 만 게시하려면 m 만 필요합니다.

이 경우에도 정확한 시계를 가진 일부 기관은 올바른 키 관리 서비스를 제공해야합니다. 위에서 제안한 m-out-of-n 이상으로이 가정을 약화시킬 수 있습니까?


1

나는 이것이 가능한 접근법이라고 생각한다.

무작위로 생성 된 암호를 사용하여 선호하는 암호화 체계를 사용하여 키 세트를 생성하십시오. 여기서 트릭은 암호문입니다. 키는 알려져 있지만 암호를 사용하여 타임 캡슐을 만듭니다.

우리가 솔트 해시를 만들면 오늘날의 컴퓨팅 능력을 사용하여 알려진 솔트와 해시가 주어진 패스 프레이즈를 계산하는 데 약 "n"년이 걸리는 패스 프레이즈를 선택하십시오. 20 년 캡슐을 만들려면 지금부터 20 년 동안 컴퓨팅 성능을 추정하고 캡슐의 대상에 따라 20 년 안에 사용자 나 슈퍼 컴퓨터가 1 개월 계산할 수있는 해시를 만듭니다. 20 년짜리 캡슐의 경우, 15 년 안에 megacorp에 의해 또는 20 년에 사용자에 의해 해독 될 수 있음을 보여줍니다.

무작위 암호 구가있는 키를 사용하여 데이터를 암호화하고 키와 해시 된 암호 구를 저장하고 실제 암호 구를 저장하지 마십시오. 이제 데이터를 보존하면 향후 어느 시점에서 데이터를 복구 할 수있는 컴퓨팅 기능을 갖게 될 것입니다!


0

나는 암호 전문가가 아니며 엔지니어 일뿐이므로 내 솔루션은 계산보다 물리적이지만 어쨌든 시도해 볼 수 있습니다. 다음 절차를 제안합니다.

  1. 비대칭 키 페어 생성
  2. 공개 키를 사용하여 일반 텍스트 메시지를 암호화
  3. 개인 키를 마이크로 컨트롤러의 휘발성 메모리에 저장하고 특정 시간이 경과 한 후에 만 ​​키를 출력하십시오.
  4. 개인 키의 다른 모든 사본을 삭제하십시오.
  5. 암호문과 마이크로 컨트롤러를 함께 묶고 기다리십시오.

그렇다면 분명한 질문이 생깁니다. 칩에 평문 메시지를 저장할 수 있는데 왜 암호화를 사용하지 않습니까? 이에 대한 대답은 고정 길이 키만 거기에 저장되기 때문에 칩의 저장 용량에 영향을주지 않으면 서 평문을 임의로 길게 할 수 있다는 것입니다. 또한 공개 키의 사본을 보관하여 나중에 더 많은 메시지를 생성 한 다음 동시에 잠금 해제 할 수 있습니다. 그러나 그것은 그것에 관한 것입니다.

이를 더욱 안전하게하기 위해 칩에 광 센서를 부착하고 조명 케이스 (또는 도어에 스위치가 부착되어 있거나 다른 탬퍼 감지 메커니즘이있는 경우)에 어셈블리를 동봉하여 센서를 빛에 ​​노출시킬 수 있습니다. 키 삭제를 트리거합니다. 이것은 에칭과 같은 침습적 방법을 사용하여 키를 얻는 것을 방지하기위한 것입니다. 일부 칩은 또한 메모리 위에 다른 필수 회로를 배치하여 개별 비트를 가려서 침습적 판독을 거의 불가능하게하는 방식으로 실리콘 층을 구성했습니다.


내부 시계가 있으면 누군가 속도를 높이거나 제거 할 수 있습니다. 어쨌든 그것은 좋지 않습니다.
Evil

@Evil 나는 이것을 생각했고, 실제로 칩이 너무 많이 불안정 해지기 전에 오버 클럭킹을 할 수 있기 때문에 문제가되지 않는다. 그렇게하면 키를 잃을 위험이있다. 예를 들어, 대부분의 8 비트 AVR은 최대 20MHz로 실행되며 약 25MHz로 오버 클로킹 될 수 있지만 그보다 크면 충돌 가능성이 크게 증가합니다.
programagor

1
변조 방지 하드웨어를 재창조 하고 있습니다. 특히 오랜 시간 동안 잘 수행하기 어려운 작업입니다.
DW
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.