RouteToken derives the deterministic NATS route token for one peer.
(peerID string)
| 361 | |
| 362 | // RouteToken derives the deterministic NATS route token for one peer. |
| 363 | func RouteToken(peerID string) (string, error) { |
| 364 | peerID = strings.TrimSpace(peerID) |
| 365 | if err := ValidatePeerID(peerID); err != nil { |
| 366 | return "", err |
| 367 | } |
| 368 | |
| 369 | sum := sha256.Sum256([]byte(peerID)) |
| 370 | return hex.EncodeToString(sum[:16]), nil |
| 371 | } |
| 372 | |
| 373 | // DecodeBody parses and validates one kind-specific envelope body. |
| 374 | func DecodeBody(kind Kind, raw json.RawMessage) (Body, error) { |