aboutsummaryrefslogtreecommitdiff
path: root/type.go
Commit message (Collapse)AuthorAgeFilesLines
* major refactor based on README.md and TODOsRasmus Dahlberg2021-02-251-306/+0
| | | | | | Updated types, improved units tests, isolated most test data to have it in one place, renamed and created new files to improve readability, and fixed a bunch of minor TODOs.
* fixed unexpected reflect behaviorRasmus Dahlberg2021-02-181-1/+1
| | | | | | | | | | | | After tls.Unmarshal() an empty slice is not assigned the nil value, but rather a slice of zero length. It is in contrast to NewTreeHeadV1(), which assigns a nil value. Therefore, reflect.DeepEqual() considers them to be different. Fixed by assigning an empty tree head extension as `make([]byte, 0)`, and not looking for nil values but rather zero-length values with len(). Further read: "Note that a non-nil empty slice and a nil slice [...] are not deeply equal." (https://golang.org/pkg/reflect/#DeepEqual).
* added basic server-side cosigning (work in progress)Rasmus Dahlberg2021-02-171-0/+33
|
* started replacing x509 with namespaceRasmus Dahlberg2021-01-271-47/+11
|
* added todo on namespaces in checksum entriesRasmus Dahlberg2020-12-021-0/+1
|
* added type testsRasmus Dahlberg2020-11-171-14/+13
| | | | | | | | | | As a result these changes were made: - Simplified a few New* functions - Allowed empty inclusion and consistency proofs, which is in contrast to not being able to marshal them due to `tls:"minlen:1"`. For example, an inclusion proof will be empty for a Merkle tree of size 1. - Disallowed empty signatures and chains in a leaf's Appendix - Removed unnecessary examples
* fixed redundant tree head checkingRasmus Dahlberg2020-11-171-8/+6
|
* created new structs more denselyRasmus Dahlberg2020-11-051-46/+12
|
* unified base64-encoding of paths for printingRasmus Dahlberg2020-11-051-12/+11
|
* simplified encoding and decodingRasmus Dahlberg2020-11-051-11/+19
| | | | | Go's "encoding/json" already takes care of encoding and decoding byte slices as base64. As such, it need not be done explicitly by us.
* double-checked encoding of ed25519 signatureRasmus Dahlberg2020-11-041-1/+0
|
* refactor types and documentationRasmus Dahlberg2020-10-301-155/+197
| | | | | | Structured files a bit better, added more documentation, switched to pointers as default (unless specifically motivated not to do so), and encapsulated TLS (un)marshaling for the respective types that use it.
* started refactoring add-entry code path according to docRasmus Dahlberg2020-10-301-5/+11
|
* updated json output according to api docRasmus Dahlberg2020-10-301-0/+8
|
* fixed tls length specifiersRasmus Dahlberg2020-10-291-12/+11
|
* refactored and added sth error-checkingRasmus Dahlberg2020-10-291-6/+21
|
* go fmtRasmus Dahlberg2020-10-281-24/+24
|
* added consistency-proof code pathRasmus Dahlberg2020-10-281-1/+36
|
* added signed tree head and get-sth code pathRasmus Dahlberg2020-10-281-1/+48
|
* added ed25519 signing and SDIsRasmus Dahlberg2020-10-271-0/+28
|
* decoupled log instance and infoRasmus Dahlberg2020-10-271-5/+5
| | | | | Makes things a bit more modular. As part of this process I also replaced ct/x509 with crypto/x509, which already suits our needs.
* added leaf appendixRasmus Dahlberg2020-10-271-0/+21
|
* refactored add-entry code pathRasmus Dahlberg2020-10-231-5/+5
|
* refactored type.goRasmus Dahlberg2020-10-231-146/+58
| | | | | Moved structures for in/out HTTP data into reqres.go and added basic doc comments. A few minor edits as well to make things consistent.
* attached InclusionProofV1 onto StItemRasmus Dahlberg2020-10-221-8/+12
|
* indented using go fmtRasmus Dahlberg2020-10-221-8/+8
|
* Added start on get-proof-by-hash code pathRasmus Dahlberg2020-10-221-0/+65
| | | | | | If the provided tree size is (mostly) valid the Trillian back-end is asked to provide an inclusion proof, which is then placed in an InclusionProofV1 structure and returned as a JSON object.
* added start on get-entries code pathRasmus Dahlberg2020-10-221-1/+27
| | | | | If the provided range is (mostly) valid the corresponding log entries are fetched from the Trillian back-end and returned as a JSON object.
* added parameter parsing for get-entriesRasmus Dahlberg2020-10-221-0/+31
|
* added start on addEntry code pathRasmus Dahlberg2020-10-211-0/+23
| | | | | If the POSTed StItem can be parsed without errors it is handed over to the Trillian back-end.
* added StFormat, StItem, and basic ChecksumV1 examplesRasmus Dahlberg2020-10-211-1/+75
|
* added basic structureRasmus Dahlberg2020-10-201-0/+3
An STFE server instance that dials the Trillian gRPC back-end, and which listens on six different HTTP endpoints but without any actual processing.