|
7 | 7 | //! Usage example:
|
8 | 8 | //!
|
9 | 9 | //! ```
|
| 10 | +//! use hex_literal::hex; |
10 | 11 | //! use openssl::pkey;
|
11 | 12 | //! use glome::{tag,verify};
|
| 13 | +//! |
12 | 14 | //! let raw_private_key = [15u8; 32]; // <- our private key loaded from somewhere
|
13 | 15 | //! let private_key = pkey::PKey::private_key_from_raw_bytes(&raw_private_key, pkey::Id::X25519).unwrap();
|
14 | 16 | //! let raw_public_key = [16u8; 32]; // <- their public key loaded from somewhere
|
15 | 17 | //! let public_key = pkey::PKey::public_key_from_raw_bytes(&raw_public_key, pkey::Id::X25519).unwrap();
|
16 |
| -//! tag(&private_key, &public_key, 0u8, b"Hello, world!"); |
17 |
| -//! verify(&private_key, &public_key, 42u8, b"Goodbye.", b"\x00\x01\x02\x03"); |
| 18 | +//! |
| 19 | +//! let alice_raw_private_key = hex!("fee1deadfee1deadfee1deadfee1deadfee1deadfee1deadfee1deadfee1dead"); |
| 20 | +//! let alice_private_key = pkey::PKey::private_key_from_raw_bytes(&alice_raw_private_key, pkey::Id::X25519).unwrap(); |
| 21 | +//! let alice_raw_public_key = hex!("872f435bb8b89d0e3ad62aa2e511074ee195e1c39ef6a88001418be656e3c376"); |
| 22 | +//! let alice_public_key = pkey::PKey::public_key_from_raw_bytes(&alice_raw_public_key, pkey::Id::X25519).unwrap(); |
| 23 | +//! |
| 24 | +//! let bob_raw_private_key = hex!("b105f00db105f00db105f00db105f00db105f00db105f00db105f00db105f00d"); |
| 25 | +//! let bob_private_key = pkey::PKey::private_key_from_raw_bytes(&bob_raw_private_key, pkey::Id::X25519).unwrap(); |
| 26 | +//! let bob_raw_public_key = hex!("d1b6941bba120bcd131f335da15778d9c68dadd398ae61cf8e7d94484ee65647"); |
| 27 | +//! let bob_public_key = pkey::PKey::public_key_from_raw_bytes(&bob_raw_public_key, pkey::Id::X25519).unwrap(); |
| 28 | +//! |
| 29 | +//! let msg = b"Hello, world!"; |
| 30 | +//! let t = tag(&alice_private_key, &bob_public_key, 0u8, msg); |
| 31 | +//! assert!(verify(&bob_private_key, &alice_public_key, 0u8, msg, &t)); |
| 32 | +//! assert!(!verify(&bob_private_key, &alice_public_key, 0u8, b"kthxbai", &t)); |
18 | 33 | //! ```
|
19 | 34 |
|
20 | 35 | use openssl::{derive, pkey};
|
|
0 commit comments