GPG / SSH: Tạo một khóa con sau khi thực tế


3

Tôi vẫn chưa quen với GPG, SSH và không có gì, và tôi không chắc thực hành tốt nhất là gì.

Tôi có một thiết bị USB có khả năng tạo và giữ các khóa SSH GPG || mà không cần rời khỏi thiết bị. Nó cũng cho phép ký, với đầu ra trên máy cục bộ.

Tôi muốn một khóa trên thiết bị này là khóa chính của mình M, nhưng thật bất tiện khi sử dụng thiết bị này để sử dụng hàng ngày. Do đó tôi muốn có một khóa khác A, được ký bởi khóa chính, tôi có thể giữ cục bộ và sử dụng cho các tác vụ thông thường. (có thể sử dụng Yubikey để khóa nó à la ).

Vì các khóa con được tạo theo cách mà tôi nghĩ là "cách thông thường" vẫn không rời khỏi thiết bị, có cách nào để tôi có thể tạo khóa mới trên Amáy cục bộ của mình và sau đó ký tên là khóa con Mkhông?

BIÊN TẬP

Để làm rõ, thiết bị được đề cập không phải là Yubikey và không thể chuyển khóa cho nó. Nó có chức năng tương tự như một cái gì đó giống như Trezor , nơi các phím chỉ có thể được tạo trên thiết bị và không thể sao chép vào hoặc ra nó.

Phương pháp Yubikey là một phương pháp tốt, tuy nhiên tôi nghĩ nó dễ bị tổn thương nếu Yubikey bị đánh cắp. Kiểu giống như Trezor có các lớp xác thực bổ sung trên thiết bị, vì vậy ngay cả khi bị đánh cắp cũng không thể được sử dụng. $ 5 chỉ tấn công bằng cờ lê!

EDIT2 (mặc dù tôi đoán cũng có niềm tin ngầm đối với các nhà sản xuất thiết bị)


Tôi cũng thích làm một cái gì đó tương tự (tôi muốn một Yubikey trở thành 'khóa chính' vật lý duy nhất của tôi, nhưng sử dụng các khóa con có thể phục hồi cho hầu hết mọi thứ). Thêm một tiền thưởng!
ELLIOTTCABLE

Xem phần Chuyển khóa sang phần cứng YubiKey , nếu nó trả lời được sự cố.
harrymc

Câu trả lời:


2

Một tài nguyên tuyệt vời để sử dụng YubiKey là Hướng dẫn YubiKey , tự mô tả là:

Đây là một hướng dẫn thực tế để sử dụng YubiKey làm Thẻ thông minh để lưu trữ khóa mã hóa và ký mã GPG.

Khóa xác thực cũng có thể được tạo cho SSH và được sử dụng với gpg-agent.

Các khóa được lưu trữ trên thẻ thông minh như YubiKey dường như khó bị đánh cắp hơn các khóa được lưu trữ trên đĩa và thuận tiện cho việc sử dụng hàng ngày.

Các hướng dẫn được viết cho Debian GNU / Linux 8 (jessie) bằng YubiKey 4 - với sự hỗ trợ cho các khóa RSA 4096 bit - ở chế độ OTP + CCID, được cập nhật lên phiên bản GPG 2.2.1. Một số ghi chú được bao gồm cho macOS là tốt.

Phần quan tâm ở đây là các phím Chuyển có chứa cảnh báo này:

Chuyển khóa sang phần cứng YubiKey chỉ là thao tác một chiều, vì vậy hãy đảm bảo bạn đã tạo bản sao lưu trước khi tiếp tục.

Thủ tục là:

  • Liệt kê các phím

    gpg --edit-key $KEYID
    
  • Chọn và di chuyển khóa chữ ký

    key 1
    keytocard
    
  • Bỏ chọn, chọn và di chuyển khóa Mã hóa

    key 1
    key 2
    keytocard
    
  • Bỏ chọn, chọn và di chuyển khóa Xác thực

    key 2
    key 3
    keytocard
    
  • Kiểm tra công việc của bạn

    gpg --list-secret-keys
    
  • Xuất khóa công khai

    gpg --armor --export $KEYID > /mnt/public-usb-key/pubkey.txt
    
  • Tùy chọn, nó có thể được tải lên một máy chủ khóa công cộng

      gpg --send-key $KEYID
    

Thông tin thêm có thể được tìm thấy trong bài viết.


đây là một câu trả lời tuyệt vời và tôi sẽ cố gắng theo dõi nó trong vài tuần tới (một khi lịch trình của tôi cho phép). Tuy nhiên, tôi không thể chấp nhận nó như một câu trả lời, vì thiết bị mà tôi tham khảo trong câu hỏi không phải là Yubikey và không thể chuyển khóa cho nó. Nó có chức năng tương tự như một cái gì đó giống như [ blog.trezor.io/trezor-firmware-1-3-6-20a7df6e692[(Trezor) . Phương pháp Yubikey là một phương pháp tốt, tuy nhiên tôi nghĩ nó dễ bị tổn thương nếu Yubikey bị đánh cắp. Kiểu giống như Trezor có các lớp xác thực bổ sung trên thiết bị, vì vậy ngay cả khi bị đánh cắp cũng không thể được sử dụng. $ 5 chỉ tấn công bằng cờ lê!
Prunus Persica

@PrunusPersica: Có một vấn đề, vì ELLIOTTCABLE đã đăng một phần thưởng dành riêng cho YubiKey. Nhưng tôi nghĩ rằng quy trình này cũng có thể hoạt động cho các khóa khác.
harrymc

Đối với một số hệ thống thẻ thông minh, có. Tuy nhiên, một trong câu hỏi không có keytocardhoạt động như tôi hiểu
Prunus Persica

Không biết đó là ai, tôi không thể giúp.
harrymc

Một ví phần cứng, được hiển thị qua github.com/romanz/trezor-agent
Prunus Persica
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.