You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sofía Celi 1622e417e4
Wipe iv and pass key directly #59
3 months ago
compat twstrike -> coyim 2 years ago
libotr-test fixed cloning of libotr 10 months ago
sexp Add full test coverage for the sexp package. Also uncovered a nasty 4 years ago
test_resources Even more tests and fixing for errors from keys 4 years ago
vendor/github.com/coyim/gotrax Extract some common OTR functions to a separate package 1 year ago
.gitignore Removes .envrc from repository 2 years ago
.travis.yml Update Go versions, and use canonical golint path 8 months ago
AUTHORS Add author information 4 years ago
Gopkg.lock Extract some common OTR functions to a separate package 1 year ago
Gopkg.toml Extract some common OTR functions to a separate package 1 year ago
LICENSE Initial structure 4 years ago
Makefile Add lint aggregator and gosec as directions in makefile 3 months ago
README.md twstrike -> coyim 2 years ago
SECURITY_ASSUMPTIONS.md fix some typos 4 years ago
ake.go Some refactorings 3 months ago
ake_test.go Fix some linter issues 3 months ago
auth_state_machine.go Some refactorings 3 months ago
auth_state_machine_test.go Fix some linter issues 3 months ago
authenticate.go Exposes ability to use SMP Abort messages 2 years ago
authenticate_test.go Exposes ability to use SMP Abort messages 2 years ago
b64.go Add support for message event received for other instance. Also add supports for checking instance tags to fragmentation. (#30) 4 years ago
bn_test.go Add some tests for bignum utilities 4 years ago
bn_utils.go Add error handling/status information from all relevant functions in 4 years ago
bytes.go fix some typos 4 years ago
bytes_test.go refactor FragmentedMessage away, and rename messageFragment to ValidMessage 4 years ago
conversation.go Make sure the ake doesn't stop us from immediately starting a new session 3 years ago
conversation_test.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
data.go Extract some common OTR functions to a separate package 1 year ago
data_message.go Exposes ability to use SMP Abort messages 2 years ago
data_message_test.go Add support for tracking of resent messages using opaque data. This will make it possible for us to actually deal with resends in a better way. 3 years ago
debug.go Remove the whole DefaultFingerprint mess and just go with basic calls. At this point, each key will know how to make fingerprints for itself, and it will always use the appropriate hash instance for that 4 years ago
debug_test.go Remove some ineffectual assignments 3 months ago
dh.go Add a table driven approach for TLV handling 4 years ago
dh_test.go Add helpers to check that parameters are in range. 4 years ago
disconnect.go Make sure the ake doesn't stop us from immediately starting a new session 3 years ago
disconnect_test.go Fix #38 - wipe SMP state when moving away from encrypted msg state 4 years ago
doc.go type fix 1 year ago
error_codes.go We should in fact generate an error if we receive an encrypted message when we are in the wrong message state 4 years ago
error_codes_test.go We should in fact generate an error if we receive an encrypted message when we are in the wrong message state 4 years ago
errors.go Exposes ability to use SMP Abort messages 2 years ago
errors_test.go Add some tests for errors and policies 4 years ago
extra_key.go Extract some common OTR functions to a separate package 1 year ago
extra_key_test.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
fixtures_test.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
fragmentation.go godoc 4 years ago
fragmentation_test.go Should ignore the fragment if it has a version not allowed by the policy 4 years ago
full_conversation_test.go Remove some ineffectual assignments 3 months ago
hash.go Remove the whole DefaultFingerprint mess and just go with basic calls. At this point, each key will know how to make fingerprints for itself, and it will always use the appropriate hash instance for that 4 years ago
heartbeat.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
heartbeat_test.go Remove all the annoying ErrGPG things and provide with better error messages 4 years ago
helpers_test.go Extract some common OTR functions to a separate package 1 year ago
inject_message.go Add final support for injecting messages. Also add support for error handling of malformed messages. Final part of #29 4 years ago
key_management.go Extract some common OTR functions to a separate package 1 year ago
key_management_test.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
keys.go Extract some common OTR functions to a separate package 1 year ago
keys_test.go Fix issue with reading libpurple files where the account name is a symbol, not a string. This fixes coyim#363 3 years ago
message_events.go Add another type of event for when a message is sent the first time, after being queued waiting for encryption 3 years ago
message_events_test.go Add support for tracking of resent messages using opaque data. This will make it possible for us to actually deal with resends in a better way. 3 years ago
message_type.go refactor FragmentedMessage away, and rename messageFragment to ValidMessage 4 years ago
message_type_test.go Add support for identifying message types completely 4 years ago
messages.go Wipe iv and pass key directly #59 3 months ago
messages_test.go Extract some common OTR functions to a separate package 1 year ago
otrv2.go Extract some common OTR functions to a separate package 1 year ago
otrv2_test.go add some more tests 4 years ago
otrv3.go Extract some common OTR functions to a separate package 1 year ago
otrv3_test.go Use the same behavior when verifying instance tags from fragmented and not-fragmented messaged 4 years ago
padding.go Implement correct processing of symmetric key TLV 4 years ago
policy.go export policy functions for client to choose 4 years ago
policy_test.go Fix some more test coverage 4 years ago
query.go Fix some linter issues 3 months ago
query_test.go Add other query messages checks 6 months ago
random.go Fix #39 - make sure we only generate key for rotation if we are actually rotating 4 years ago
random_test.go Make newConversation usage explicit regarding the random number generator 4 years ago
receive.go Fix most of the coyim#301 - stop the OTR flood from happening. 3 years ago
receive_test.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
resend.go Simplify copy of MessagePlaintext 2 years ago
resend_test.go Add another type of event for when a message is sent the first time, after being queued waiting for encryption 3 years ago
security_events.go Update all combining event handlers and all debug event handlers to be exported 4 years ago
security_events_test.go Update all combining event handlers and all debug event handlers to be exported 4 years ago
send.go Add support for tracking of resent messages using opaque data. This will make it possible for us to actually deal with resends in a better way. 3 years ago
send_test.go Add support for tracking of resent messages using opaque data. This will make it possible for us to actually deal with resends in a better way. 3 years ago
smp.go Extract some common OTR functions to a separate package 1 year ago
smp_data_test.go Store pb in SMP state after generating msg 2 4 years ago
smp_events.go Update all combining event handlers and all debug event handlers to be exported 4 years ago
smp_events_test.go Update all combining event handlers and all debug event handlers to be exported 4 years ago
smp_msg1.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
smp_msg1_test.go randMPI returns errShortRandomRead if fails 4 years ago
smp_msg2.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
smp_msg2_test.go randMPI returns errShortRandomRead if fails 4 years ago
smp_msg3.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
smp_msg3_test.go randMPI returns errShortRandomRead if fails 4 years ago
smp_msg4.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
smp_msg4_test.go randMPI returns errShortRandomRead if fails 4 years ago
smp_msg_abort.go moving tlv to its file and use const types in tlv 4 years ago
smp_protocol_test.go Remove some ineffectual assignments 3 months ago
smp_state_machine.go Exposes ability to use SMP Abort messages 2 years ago
smp_state_machine_test.go Exposes ability to use SMP Abort messages 2 years ago
smp_test.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
smp_tlv_test.go Fix another TODO, dealing with errors for parsing of 1Q messages (#27) 4 years ago
ssid.go Expose SSID for display to the user (#42) 4 years ago
ssid_test.go Expose SSID for display to the user (#42) 4 years ago
tlv.go Fix some linter issues 3 months ago
version.go Extract some common OTR functions to a separate package 1 year ago
version_test.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
whitespace.go Make the whitespace tags a bit more explicit 3 years ago
whitespace_test.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
wipe.go Merge branch 3x, in order to extract length and algorithm decisions for signing keys, hashes and macs 4 years ago
wipe_test.go Separate AKE keys from conversation keys context 4 years ago

README.md

OTR3 Build Status

Implements version 3 of the OTR standard. Implements feature parity with libotr 4.1.0.

API Documentation

GoDoc

Developing

Before doing any work, if you want to separate out your GOPATH from other projects, install direnv

$ brew update
$ brew install direnv
$ echo 'eval "$(direnv hook bash)"' >> ~/.bashrc

Then, create a symbolic link to the OTR3 repository

ln -s /PathToMyGoPackages/.gopkgs/otr3/src/github.com/coyim/ .

Install all dependencies:

./deps.sh