helpers

package
v2.5.0 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2024 License: MPL-2.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var HTTPRequestID = "HTTPRequestID"
View Source
var LogFormatter = &formatter.Formatter{
	TimestampFormat: "2006-01-02 15:04:05",
	HideKeys:        true,
	FieldsOrder:     []string{"subsystem", "subsystem-provider", "req-id"},
	CallerFirst:     true,
	CustomCallerFormatter: func(f *runtime.Frame) string {
		filename := path.Base(f.File)
		return fmt.Sprintf(" [%s %s():%d]", filename, f.Function, f.Line)
	},
}

Functions

func BuildHTTPClientWithTLSOptions

func BuildHTTPClientWithTLSOptions(cli *http.Client, cfg config.TLSConfig) (*http.Client, error)

func BuildHTTPClientWithTracerLogger

func BuildHTTPClientWithTracerLogger(cli *http.Client, logger *logrus.Entry) (*http.Client, error)

func CalculateECDSAKeySizes

func CalculateECDSAKeySizes(keyMin int, KeyMax int) []int

func CalculateRSAKeySizes

func CalculateRSAKeySizes(keyMin int, KeyMax int) []int

func CertificateToPEM

func CertificateToPEM(c *x509.Certificate) string

func ConfigureContextWithRequest

func ConfigureContextWithRequest(ctx context.Context, headers http.Header) context.Context

func ConfigureLogger

func ConfigureLogger(currentLevel config.LogLevel, subsystem string) *logrus.Entry

func ConfigureLoggerWithRequestID

func ConfigureLoggerWithRequestID(ctx context.Context, logger *logrus.Entry) *logrus.Entry

func DecryptWithPrivateKey

func DecryptWithPrivateKey(ciphertext []byte, priv *rsa.PrivateKey) ([]byte, error)

DecryptWithPrivateKey decrypts data with private key

func EncryptWithPublicKey

func EncryptWithPublicKey(msg []byte, pub *rsa.PublicKey) ([]byte, error)

EncryptWithPublicKey encrypts data with public key

func GenerateCertificateRequest

func GenerateCertificateRequest(subject models.Subject, key any) (*x509.CertificateRequest, error)

defined to generate certificates with RSA and ECDSA keys

func GenerateCertificateRequestWithExtensions added in v2.4.2

func GenerateCertificateRequestWithExtensions(subject models.Subject, extensions []pkix.Extension, key any) (*x509.CertificateRequest, error)

defined to generate certificates with RSA and ECDSA keys

func GenerateECDSAKey

func GenerateECDSAKey(curve elliptic.Curve) (*ecdsa.PrivateKey, error)

func GenerateRSAKey

func GenerateRSAKey(bits int) (*rsa.PrivateKey, error)

func GenerateSelfSignedCA added in v2.4.2

func GenerateSelfSignedCA(keyType x509.PublicKeyAlgorithm, expirationTime time.Duration) (*x509.Certificate, any, error)

func GenerateSelfSignedCertificate

func GenerateSelfSignedCertificate(key crypto.Signer, cn string) (*x509.Certificate, error)

func GetMetadataToStruct

func GetMetadataToStruct(metadata map[string]any, keyToGet string, elem any) (bool, error)

func KeyStrengthMetadataFromCertificate

func KeyStrengthMetadataFromCertificate(cert *x509.Certificate) models.KeyStrengthMetadata

func LoadSystemCACertPoolWithExtraCAsFromFiles

func LoadSystemCACertPoolWithExtraCAsFromFiles(casToAdd []string) *x509.CertPool

func LoadSytemCACertPool

func LoadSytemCACertPool() *x509.CertPool

func MergeMaps

func MergeMaps[E any](m1 *map[string]E, m2 *map[string]E) *map[string]E

func ParseCertificate

func ParseCertificate(cert string) (*x509.Certificate, error)

func ParsePrivateKey

func ParsePrivateKey(privKeyBytes []byte) (interface{}, error)

func PkixNameToString

func PkixNameToString(subject pkix.Name) string

func PkixNameToSubject

func PkixNameToSubject(pkixName pkix.Name) models.Subject

func PrivateKeyToPEM

func PrivateKeyToPEM(key any) (string, error)

func ReadCertificateFromFile

func ReadCertificateFromFile(filePath string) (*x509.Certificate, error)

func ReadPrivateKeyFromFile

func ReadPrivateKeyFromFile(filePath string) (interface{}, error)

func SerialNumberToString

func SerialNumberToString(n *big.Int) string

func SubjectToPkixName

func SubjectToPkixName(subj models.Subject) pkix.Name

func ValidateCAExpiration

func ValidateCAExpiration(expiration models.Expiration, caExp time.Time) bool

func ValidateCertAndPrivKey

func ValidateCertAndPrivKey(cert *x509.Certificate, rsaKey *rsa.PrivateKey, ecKey *ecdsa.PrivateKey) (bool, error)

func ValidateCertificate

func ValidateCertificate(ca, cert *x509.Certificate, considerExpiration bool) error

func ValidateExpirationTimeRef

func ValidateExpirationTimeRef(input models.Expiration) bool

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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