파이썬 스크립트를 이용한 네이티브 워크스페이스 키 백업 및 복구(Native Workspace Key Backup and Recovery with Python Script)

원본 URL: https://support.fireblocks.io/hc/en-us/articles/360012223159-Native-Workspace-Key-Backup-and-Recovery-with-Python-Script


참고
이 문서는 키 생성 및 재해 복구에 사용되는 Python 스크립트(Legacy)에 대해 다룹니다. 그러나 네이티브 복구 유틸리티(Native Recovery Utility) 도구를 사용하는 것을 강력히 권장합니다 (06-generating-workspace-key-backup-package.md 참조).

Python 스크립트는 향후 폐기될 예정입니다. 새 Recovery Utility 도구는 출금, 파생, 키 백업 생성에 대해 더 간단한 사용자 경험을 제공합니다. 오프라인 머신으로 macOS 또는 Ubuntu (M1/M2 칩)를 사용할 수 없는 경우에만 아래 지침을 따르세요.



개요

워크스페이스 키 백업 및 복구 프로세스는 워크스페이스 전체 개인키의 두 클라우드 키 공유분이 Fireblocks의 별도 데이터 센터에만 저장되지 않도록 보장합니다. 두 키 공유분이 Fireblocks 서버에만 저장되지 않음으로써, Fireblocks Vault에서 자산을 복구해야 할 경우 워크스페이스 전체 개인키에 대한 완전한 통제권을 유지할 수 있습니다.

중요
워크스페이스의 전체 개인키에 대한 워크스페이스 키 백업을 반드시 실행해야 합니다.

Fireblocks MPC 지갑을 사용할 때 고객사는 자산에 대한 직접 수탁을 유지합니다. 자기 수탁자로서 개인키에 대한 독립적 접근성을 보장할 책임이 있습니다. 워크스페이스 생성 후 14일 이내에 키를 백업할 것을 강력히 권장합니다.


워크스페이스 키 백업 및 복구 프로세스

워크스페이스 키 백업 및 복구는 두 개의 프로세스로 구성됩니다:

  1. 테스트넷 워크스페이스에서 설정 및 테스트
  2. 프로덕션 워크스페이스에서 재해 복구(DR) 계획 실행

테스트넷 워크스페이스에서의 워크스페이스 키 복구

중요
프로덕션 워크스페이스의 전체 개인키를 백업하는 과정은 자산을 위험에 노출시킬 수 있습니다. 이러한 이유로 프로덕션 워크스페이스 키를 사용한 테스트는 권장하지 않습니다. 워크스페이스 키 백업 및 복구 프로세스는 항상 테스트넷 워크스페이스에서 테스트해야 합니다.

Fireblocks 고객에게는 테스트넷 워크스페이스가 제공되어야 합니다. 제공되지 않았다면 Customer Success Manager에게 문의하여 백업 시뮬레이션을 수행할 수 있는 워크스페이스를 받으세요.


워크스페이스 키 백업 생성 방법 (Python 스크립트, Legacy)

1단계: 오프라인 복구 장비 설정

조직에서 워크스페이스 키 백업 패키지를 요청하기 전 필수 단계:

기본 설정 (Basic setup)

기본 설정에는 다음 장비가 필요합니다:

고급 설정 (Advanced setup)

기본 설정과 동일한 오프라인 머신 3대를 사용하되, 중복성을 위해 모든 파일을 추가 전용 오프라인 머신에도 복사합니다. 고급 설정 프로세스에서도 파일 전송에는 단 하나의 안전한 USB 메모리 스틱만 사용할 수 있습니다.


2단계: 복구 키페어 생성

Fireblocks Key Backup and Recovery Tool은 AES-128 암호화 표준을 사용합니다. 도구를 통해 실행하는 대신 OpenSSL을 사용하여 AES-128, AES-196, AES-256 암호화 수준을 사용할 수도 있습니다.

복구 키페어는 두 클라우드 키 공유분을 암호화하고 오프라인 환경에서 복호화할 수 있게 합니다. 지정된 오프라인 머신에서 명령 프롬프트를 사용하여 다음 단계를 완료하세요.

참고: Windows 머신을 사용하는 경우 디바이스에 OpenSSL을 먼저 설치해야 합니다.

  1. Fireblocks Key Backup and Recovery Tool 실행:
    bash ./fireblocks_key_backup_and_recovery.py
  2. "What do you want to do?" 프롬프트에서 Create a recovery keypair를 선택하고 지침을 따릅니다.

경고
키페어 패스프레이즈를 반드시 암기하고 별도의 안전한 장소(예: 금고)에 사본을 보관하세요.

이 프로세스가 완료되면 복구 키페어가 도구 실행 디렉터리에 저장됩니다.


3단계: Fireblocks 콘솔로 복구 공개 키 전송

백업 프로세스를 시작하기 전에 "Security and Maintenance Best Practices" 문서를 검토하여 권장 역할을 이해하세요.

네이티브 인하우스 키 백업 프로세스를 완료하려면 다음 단계를 따르세요:

  1. Owner가 공개 키 파일을 콘솔에 접근할 수 있는 온라인 머신으로 추출합니다.
  2. Fireblocks 콘솔에서 Owner가 Settings > General > In-house key backup으로 이동한 다음 Create backup을 선택합니다.
  3. 위에서 생성한 공개 키 파일을 선택한 후 Upload key를 선택합니다.
  4. 워크스페이스 Owner는 Admin Quorum과 함께 Fireblocks 모바일 앱에서 공개 복구 키를 검증 및 승인해야 한다는 확인 이메일을 받습니다.
  5. Admin Quorum은 Fireblocks 모바일 앱을 사용하여 키를 승인하라는 알림을 받습니다. 48시간 이내에 승인하지 않으면 이 프로세스를 다시 시작해야 합니다.
  6. 요청이 승인 대기 중인 동안 노란색 Awaiting approval 배지를 선택하면 남은 승인 요청과 여전히 승인할 수 있는 Admin이 표시됩니다.
  7. 아직 Fireblocks Key Backup and Recovery Tool을 실행하지 않았다면 아래 명령어를 사용하여 실행합니다. 도구 사용 전 필수 설정 단계를 완료했는지 확인하세요.
    bash ./fireblocks_key_backup_and_recovery.py
  8. 첫 번째 프롬프트 "What do you want to do?"에서 네 가지 옵션을 볼 수 있습니다. 옵션 2 - Verify the public backup key (for self-service backups)를 선택합니다. (이 단계의 목적은 도구에서 생성된 공개 키가 Admin Quorum이 모바일 앱에서 보는 것과 동일한지 검증하는 것입니다.)
  9. 위에서 생성한 공개 키 파일 이름을 입력합니다.
  10. 검증 방법을 선택합니다:
    • (a) Display a scannable public key QR code: pub_key_qr.png 파일이 생성되어 자동으로 열립니다.
    • (b) Obtain a public key short phrase: 8자 짧은 구문(short phrase)이 도구에서 생성되어 표시됩니다.
  11. Admin Quorum이 워크스페이스 Owner와 협력하여 Fireblocks 모바일 앱의 프롬프트에 따라 키 백업을 검증 및 승인합니다:
    • View > Get Started > I'm ready to approve 선택
    • Admin Quorum이 승인 방법(QR 코드 스캔 또는 짧은 키 입력)을 선택하고 Owner에게 알림
    • QR 코드를 스캔하거나 짧은 키를 입력 (적합한 방법에 따라)
    • 검증이 성공하면 Fireblocks 모바일 앱에서 키가 검증되었음을 알림
  12. 공개 키가 일치하면 Fireblocks 모바일 앱에서 Approve를 선택합니다. 일치하지 않으면 Deny를 선택합니다 — 이는 Owner가 실수로 잘못된 복구 공개 키를 수정하거나 업로드했을 수 있음을 의미합니다.
  13. Admin Quorum과 Owner가 Fireblocks 모바일 앱 PIN 코드를 입력하고 생체 인식 인증을 완료하여 요청을 승인합니다.
  14. Fireblocks 콘솔에서 백업 상태가 Awaiting completion으로 업데이트됩니다. Admin이 Deny를 선택한 경우 상태는 Denied로 업데이트됩니다.
  15. 모바일 앱에서 승인 프로세스가 완료되면 워크스페이스 Owner는 이메일로 암호화된 키트를 받으며, 이를 다운로드하여 에어갭 머신으로 전송해야 합니다.
  16. 이메일의 지침을 수행한 후 콘솔에서 백업을 완료로 표시합니다.
  17. 콘솔에서 상태가 Completed로 업데이트됩니다.

이제 인하우스 키 백업 패키지 생성을 완료했습니다. 복구 패키지 검증에 대해서는 "Verifying a recovery package" 문서를 참조하세요.


관련 문서