-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
7 changed files
with
41 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
*.code-workspace | ||
# Cryptography details shouldn't be stored on the repo IMO. | ||
**/*/*.crypto.json | ||
# Test generated Cryptography details shouldn't be stored on the repo IMO. | ||
**/*/*.test.json | ||
|
||
__debug_bin |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,16 +1,47 @@ | ||
# Next Generation Certificate Transparency: | ||
|
||
## Running the code | ||
## Folders: | ||
|
||
**`config`**: Contains the layout of private and public json configuration files used by Monitors and Gossipers. Also contains loaders for the object versions of these .json files. | ||
|
||
**`crypto`**: Abstractions associated with CTng cryptographic implementations, and the cryptoconfig implementation. | ||
|
||
**`gossip`**: Defines the Gossip object, the state object of the Gossiper, and many functions associated with running a gossiper. | ||
|
||
**`GZip`**: Implements functions for reading arrays of bytes to a base-64 encoded, Gzip-compressed representation. | ||
|
||
**`monitor`**: Defines the monitor server state and functions associated with monitor tasks, such as querying Loggers and CAs. | ||
|
||
**`server`**: HTTP Server implementations for the Gossiper and Monitor. Should call functions from **`gossip`** or **`monitor`**, respectively. | ||
|
||
**`util`**: a package that has no internal imports: helper functions and constants that are used throughout the codebase but prevents import cycles from occurring (import cycles are not allowed in go). | ||
|
||
|
||
**`testData`**: Defines a configuration of CTng with 4 monitors, 4 gossipers, 3 CAs, and 3 Loggers. Also defines a fakeLogger and fakeCA HTTP client for testing. | ||
___ | ||
## Files | ||
|
||
**`ctng.go`**: A commandline interface for running a Monitor, Gossiper, fakeLogger, or fakeCA. | ||
|
||
**`monitorTest.sh`**: run as `sh monitorTest.sh [N]`, where N is which monitor you want to run | ||
|
||
# Running the code | ||
|
||
Run `go install .` before continuing! | ||
|
||
To run a single Monitor or gossiper, run | ||
`go run . [gossiper|monitor|] [public_config_path] [private_config_path] [crypto_config_path]` | ||
|
||
`go run . [gossiper|monitor|logger] [public_config_path] [private_config_path] [crypto_config_path]`. | ||
|
||
E.X: `go run . gossiper ./public.json private.json crypto.json` | ||
|
||
To run a fakeLogger or fakeCA, run | ||
`go run . [logger|ca] [configPath]` | ||
|
||
The `testData` folder contains configurations for testing, but configs can be generated using the functions in `config`. | ||
|
||
|
||
## Function Documentation | ||
___ | ||
# Function Documentation | ||
Documentation + Function descriptions exist in each file/subfolder. | ||
|
||
To view this this info + documentation in a formal documentation setting, utilize GoDoc. | ||
To view this this info + documentation in a formal documentation setting, GoDoc could be utilized, but requires installing the repository locally as a package. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters