1OTR_PARSE(1) General Commands Manual OTR_PARSE(1)
2
3
4
6 otr_parse, otr_sesskeys, otr_mackey, otr_readforge, otr_modify,
7 otr_remac - Process Off-the-Record Messaging transcripts
8
10 otr_parse
11 otr_sesskeys our_privkey their_pubkey
12 otr_mackey aes_enc_key
13 otr_readforge aes_enc_key [newmsg]
14 otr_modify mackey old_text new_text offset
15 otr_remac mackey flags snd_keyid rcv_keyid pubkey counter encdata
16 revealed_mackeys
17
19 Off-the-Record (OTR) Messaging allows you to have private conversations
20 over IM by providing:
21 - Encryption
22 - No one else can read your instant messages.
23 - Authentication
24 - You are assured the correspondent is who you think it is.
25 - Deniability
26 - The messages you send do not have digital signatures that are
27 checkable by a third party. Anyone can forge messages after a
28 conversation to make them look like they came from you. However,
29 during a conversation, your correspondent is assured the messages
30 he sees are authentic and unmodified.
31 - Perfect forward secrecy
32 - If you lose control of your private keys, no previous conversation
33 is compromised.
34
35 The OTR Toolkit is useful for analyzing and/or forging OTR messages.
36 Why do we offer this? Primarily, to make absolutely sure that tran‐
37 scripts of OTR conversations are really easy to forge after the fact.
38 [Note that during an OTR conversation, messages can't be forged without
39 real-time access to the secret keys on the participants' computers, and
40 in that case, all security has already been lost.] Easily-forgeable
41 transcripts help us provide the "Deniability" property: if someone
42 claims you said something over OTR, they'll have no proof, as anyone at
43 all can modify a transcript to make it say whatever they like, and
44 still have all the verification come out correctly.
45
46 Here are the six programs in the toolkit:
47
48 - otr_parse
49 - Parse OTR messages given on stdin, showing the values of all the
50 fields in OTR protocol messages.
51
52 - otr_sesskeys our_privkey their_pubkey
53 - Shows our public key, the session id, two AES and two MAC keys
54 derived from the given Diffie-Hellman keys (one private, one pub‐
55 lic).
56
57 - otr_mackey aes_enc_key
58 - Shows the MAC key derived from the given AES key.
59
60 - otr_readforge aes_enc_key [newmsg]
61 - Decrypts an OTR Data message using the given AES key, and displays
62 the message.
63 - If newmsg is given, replace the message with that one, encrypt
64 and MAC it properly, and output the resulting OTR Data Message.
65 This works even if the given key was not correct for the original
66 message, so as to enable complete forgeries.
67
68 - otr_modify mackey old_text new_text offset
69 - Even if you can't read the data because you don't know either
70 the AES key or the Diffie-Hellman private key, but you can make a
71 good guess that the substring "old_text" appears at the given
72 offset in the message, replace the old_text with the new_text
73 (which must be of the same length), recalculate the MAC with the
74 given mackey, and output the resulting Data message.
75 - Note that, even if you don't know any text in an existing message,
76 you can still forge messages of your choice using the
77 otr_readforge command, above.
78
79 - otr_remac mackey flags snd_keyid rcv_keyid pubkey counter encdata
80 revealed_mackeys
81 - Make a new OTR Data Message, with the given pieces (note that the
82 data part is already encrypted). MAC it with the given mackey.
83
84
86 Off-the-Record Messaging, at http://www.cypherpunks.ca/otr/
87 ⟨http://www.cypherpunks.ca/otr/⟩
88
90 otr_toolkit was written by the OTR Dev Team <otr@cypherpunks.ca>.
91
92
93
94 October 27, 2005 OTR_PARSE(1)