Documentation ¶
Overview ¶
Copyright IBM Corp. 2016 All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Notice: This file has been modified for Hyperledger Fabric SDK Go usage. Please review third_party pinning scripts and patches for more details.
Copyright IBM Corp. 2016 All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Notice: This file has been modified for Hyperledger Fabric SDK Go usage. Please review third_party pinning scripts and patches for more details.
Copyright IBM Corp. 2016 All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Notice: This file has been modified for Hyperledger Fabric SDK Go usage. Please review third_party pinning scripts and patches for more details.
Index ¶
- func AESCBCPKCS7Decrypt(key, src []byte) ([]byte, error)
- func AESCBCPKCS7Encrypt(key, src []byte) ([]byte, error)
- func AESCBCPKCS7EncryptWithIV(IV []byte, key, src []byte) ([]byte, error)
- func AESCBCPKCS7EncryptWithRand(prng io.Reader, key, src []byte) ([]byte, error)
- func BCCSPKeyRequestGenerate(ks bccsp.KeyStore) (bccsp.Key, crypto.Signer, error)
- func DERToPublicKey(raw []byte) (pub interface{}, err error)
- func GetECDSAPrivateKey(key bccsp.Key) *ecdsa.PrivateKey
- func GetRandomBytes(len int) ([]byte, error)
- func ImportCert(cert []byte) (bccsp.Key, error)
- func KeyImport(raw interface{}) (bccsp.Key, error)
- func LoadKey(user *msp.UserData, ks bccsp.KeyStore) error
- func New(key bccsp.Key) (crypto.Signer, error)
- func NewFileBasedKeyStore(pwd []byte, path string, readOnly bool) (bccsp.KeyStore, error)
- func Pkcs7PaddingKey(src []byte) []byte
- type ECDSAP256KeyGenOpts
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AESCBCPKCS7Decrypt ¶
AESCBCPKCS7Decrypt combines CBC decryption and PKCS7 unpadding
func AESCBCPKCS7Encrypt ¶
AESCBCPKCS7Encrypt combines CBC encryption and PKCS7 padding
func AESCBCPKCS7EncryptWithIV ¶
AESCBCPKCS7Encrypt combines CBC encryption and PKCS7 padding, the IV used is the one passed to the function
func AESCBCPKCS7EncryptWithRand ¶
AESCBCPKCS7Encrypt combines CBC encryption and PKCS7 padding using as prng the passed to the function
func BCCSPKeyRequestGenerate ¶
func GetECDSAPrivateKey ¶
func GetECDSAPrivateKey(key bccsp.Key) *ecdsa.PrivateKey
func GetRandomBytes ¶
GetRandomBytes returns len random looking bytes
func NewFileBasedKeyStore ¶
NewFileBasedKeyStore instantiated a file-based key store at a given position. The key store can be encrypted if a non-empty password is specified. It can be also be set as read only. In this case, any store operation will be forbidden
Types ¶
type ECDSAP256KeyGenOpts ¶
type ECDSAP256KeyGenOpts struct {
Temporary bool
}
ECDSAP256KeyGenOpts contains options for ECDSA key generation with curve P-256.
func (*ECDSAP256KeyGenOpts) Algorithm ¶
func (opts *ECDSAP256KeyGenOpts) Algorithm() string
Algorithm returns the key generation algorithm identifier (to be used).
func (*ECDSAP256KeyGenOpts) Ephemeral ¶
func (opts *ECDSAP256KeyGenOpts) Ephemeral() bool
Ephemeral returns true if the key to generate has to be ephemeral, false otherwise.