keystore

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 23, 2020 License: Apache-2.0 Imports: 29 Imported by: 0

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

Constants

This section is empty.

Variables

This section is empty.

Functions

func AESCBCPKCS7Decrypt

func AESCBCPKCS7Decrypt(key, src []byte) ([]byte, error)

AESCBCPKCS7Decrypt combines CBC decryption and PKCS7 unpadding

func AESCBCPKCS7Encrypt

func AESCBCPKCS7Encrypt(key, src []byte) ([]byte, error)

AESCBCPKCS7Encrypt combines CBC encryption and PKCS7 padding

func AESCBCPKCS7EncryptWithIV

func AESCBCPKCS7EncryptWithIV(IV []byte, key, src []byte) ([]byte, error)

AESCBCPKCS7Encrypt combines CBC encryption and PKCS7 padding, the IV used is the one passed to the function

func AESCBCPKCS7EncryptWithRand

func AESCBCPKCS7EncryptWithRand(prng io.Reader, key, src []byte) ([]byte, error)

AESCBCPKCS7Encrypt combines CBC encryption and PKCS7 padding using as prng the passed to the function

func BCCSPKeyRequestGenerate

func BCCSPKeyRequestGenerate(ks bccsp.KeyStore) (bccsp.Key, crypto.Signer, error)

func DERToPublicKey

func DERToPublicKey(raw []byte) (pub interface{}, err error)

func GetECDSAPrivateKey

func GetECDSAPrivateKey(key bccsp.Key) *ecdsa.PrivateKey

func GetRandomBytes

func GetRandomBytes(len int) ([]byte, error)

GetRandomBytes returns len random looking bytes

func ImportCert

func ImportCert(cert []byte) (bccsp.Key, error)

func KeyImport

func KeyImport(raw interface{}) (bccsp.Key, error)

func LoadKey

func LoadKey(user *msp.UserData, ks bccsp.KeyStore) error

func New

func New(key bccsp.Key) (crypto.Signer, error)

func NewFileBasedKeyStore

func NewFileBasedKeyStore(pwd []byte, path string, readOnly bool) (bccsp.KeyStore, error)

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

func Pkcs7PaddingKey

func Pkcs7PaddingKey(src []byte) []byte

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL