Documentation ¶
Index ¶
- func NewSecurityAdvisor(deserializer mgmt.DeserializersManager) api.SecurityAdvisor
- type MSPMessageCryptoService
- func (s *MSPMessageCryptoService) Expiration(peerIdentity api.PeerIdentityType) (time.Time, error)
- func (s *MSPMessageCryptoService) GetPKIidOfCert(peerIdentity api.PeerIdentityType) common.PKIidType
- func (s *MSPMessageCryptoService) Sign(msg []byte) ([]byte, error)
- func (s *MSPMessageCryptoService) ValidateIdentity(peerIdentity api.PeerIdentityType) error
- func (s *MSPMessageCryptoService) Verify(peerIdentity api.PeerIdentityType, signature, message []byte) error
- func (s *MSPMessageCryptoService) VerifyBlock(chainID common.ChainID, seqNum uint64, signedBlock []byte) error
- func (s *MSPMessageCryptoService) VerifyByChannel(chainID common.ChainID, peerIdentity api.PeerIdentityType, ...) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewSecurityAdvisor ¶
func NewSecurityAdvisor(deserializer mgmt.DeserializersManager) api.SecurityAdvisor
NewSecurityAdvisor创建MSPSecurityAdvisor的新实例 实现了MessageCryptoService
Types ¶
type MSPMessageCryptoService ¶
type MSPMessageCryptoService struct {
// contains filtered or unexported fields
}
MSPMessageRyptoService实现MessageCryptoService接口 使用对等MSP(本地和通道相关)
为了使系统安全,必须 MSP是最新的。频道的MSP通过以下方式更新: 由订购服务分发的配置事务。
还需要建立类似的机制来更新本地MSP。 此实现假定这些机制都已就位并起作用。
func NewMCS ¶
func NewMCS(channelPolicyManagerGetter policies.ChannelPolicyManagerGetter, localSigner crypto.LocalSigner, deserializer mgmt.DeserializersManager) *MSPMessageCryptoService
newmcs创建MSPMessageRyptoService的新实例 实现了MessageCryptoService。 该方法接受输入: 1。通过manager方法授予给定通道的策略管理器访问权限的policies.channelpolicymanagergetter。 2。crypto.localsigner的实例 三。标识反序列化程序管理器
func (*MSPMessageCryptoService) Expiration ¶
func (s *MSPMessageCryptoService) Expiration(peerIdentity api.PeerIdentityType) (time.Time, error)
func (*MSPMessageCryptoService) GetPKIidOfCert ¶
func (s *MSPMessageCryptoService) GetPKIidOfCert(peerIdentity api.PeerIdentityType) common.PKIidType
getpkiidofcert返回对等身份的pki-id 如果出现任何错误,方法返回nil 对等机的pkid计算为对等机标识的sha2-256,其中 应该是MSP标识的序列化版本。 此方法不验证对等标识。 这个验证应该在执行流程中适当地完成。
func (*MSPMessageCryptoService) Sign ¶
func (s *MSPMessageCryptoService) Sign(msg []byte) ([]byte, error)
用该对等方的签名密钥和输出对消息进行签名 如果没有出现错误,则返回签名。
func (*MSPMessageCryptoService) ValidateIdentity ¶
func (s *MSPMessageCryptoService) ValidateIdentity(peerIdentity api.PeerIdentityType) error
validateIDentity验证远程对等机的标识。 如果标识无效、已吊销、已过期,则返回错误。 否则,返回零
func (*MSPMessageCryptoService) Verify ¶
func (s *MSPMessageCryptoService) Verify(peerIdentity api.PeerIdentityType, signature, message []byte) error
验证检查签名是否是对等验证密钥下消息的有效签名。 如果验证成功,则verify返回nil,表示没有发生错误。 如果peerIdentity为零,则验证失败。
func (*MSPMessageCryptoService) VerifyBlock ¶
func (s *MSPMessageCryptoService) VerifyBlock(chainID common.ChainID, seqNum uint64, signedBlock []byte) error
如果块已正确签名,并且声明的seqnum是 块头包含的序列号。 else返回错误
func (*MSPMessageCryptoService) VerifyByChannel ¶
func (s *MSPMessageCryptoService) VerifyByChannel(chainID common.ChainID, peerIdentity api.PeerIdentityType, signature, message []byte) error
VerifyByChannel检查签名是否为消息的有效签名 在对等机的验证密钥下,也在特定通道的上下文中。 如果验证成功,则verify返回nil,表示没有发生错误。 如果peerIdentity为零,则验证失败。