Files
go-i2p/lib/i2np/build_response_record.go

49 lines
1.2 KiB
Go

package i2np
import (
"github.com/go-i2p/go-i2p/lib/common"
)
/*
I2P I2NP BuildResponseRecord
https://geti2p.net/spec/i2np
Accurate for version 0.9.28
Encrypted:
bytes 0-527 :: AES-encrypted record (note: same size as BuildRequestRecord)
Unencrypted:
+----+----+----+----+----+----+----+----+
| |
+ +
| |
+ SHA-256 Hash of following bytes +
| |
+ +
| |
+----+----+----+----+----+----+----+----+
| random data... |
~ ~
| |
+ +----+
| | ret|
+----+----+----+----+----+----+----+----+
bytes 0-31 :: SHA-256 Hash of bytes 32-527
bytes 32-526 :: random data
byte 527 :: reply
total length: 528
*/
type BuildResponseRecordELGamalAES [528]byte
type BuildResponseRecordELGamal [528]byte
type BuildResponseRecord struct {
Hash common.Hash
Padding [495]byte
Reply byte
}