Documentation ¶
Index ¶
- Variables
- func WrapWithWSSESoapEnvelope(dataXML, id string) (result string)
- type Client
- func (cli *Client) Close() (err error)
- func (cli *Client) GetCertFromCMS(cms []byte) ([]*x509.Certificate, error)
- func (cli *Client) GetCertFromXML(xml string) ([]*x509.Certificate, error)
- func (cli *Client) GetSigAlgFromXML(xml string) (string, error)
- func (cli *Client) GetTimeFromSig(cmsDer []byte) (time.Time, error)
- func (cli *Client) HashGOST95(data []byte) (hashed []byte, err error)
- func (cli *Client) HashSHA256(data []byte) (hashed []byte, err error)
- func (cli *Client) LoadCertFromBytes(cert []byte, certType ckalkan.CertType) (err error)
- func (cli *Client) LoadCerts() error
- func (cli *Client) LoadKeyStore(path, password string) error
- func (cli *Client) LoadKeyStoreFromBytes(key []byte, password string) (err error)
- func (cli *Client) Options() Options
- func (cli *Client) SetProxyOff(proxyURL string) error
- func (cli *Client) SetProxyOn(proxyURL string) error
- func (cli *Client) Sign(input *types.SignInput) (signature []byte, err error)
- func (cli *Client) SignHash(input *types.SignHashInput) (signedHash []byte, err error)
- func (cli *Client) SignWSSE(xmlData, id string) (string, error)
- func (cli *Client) SignXML(input *types.SignXMLInput) (string, error)
- func (cli *Client) ValidateCert(input *kalkanTypes.ValidateCertInput) (string, error)
- func (cli *Client) Verify(input *types.VerifyInput) (string, error)
- func (cli *Client) VerifyDetached(signature, data []byte) (string, error)
- func (cli *Client) VerifyXML(input *types.VerifyXMLInput) (result string, err error)
- func (cli *Client) X509CertificateGetInfo(input *x509.Certificate) (*types.CertificateInfo, error)
- func (cli *Client) X509ExportCertificateFromStore() (cert *x509.Certificate, err error)
- type Logger
- type Option
- func WithCert(cert *x509.Certificate, typ ckalkan.CertType) Option
- func WithCerts(c []OptionsCert) Option
- func WithLogger(logger Logger) Option
- func WithOCSP(u string) Option
- func WithRemoteProdCerts(ctx context.Context) Option
- func WithRemoteTestCerts(ctx context.Context) Option
- func WithTSP(u string) Option
- type Options
- type OptionsCert
Constants ¶
This section is empty.
Variables ¶
var ( OptsProd = []Option{ WithLogger(defaultLogger), WithTSP(prodTSP), WithOCSP(prodOCSP), } OptsTest = []Option{ WithLogger(defaultLogger), WithTSP(testTSP), WithOCSP(testOCSP), } )
var ( ErrInit = errors.New("unable to refer to KC_GetFunctionList") ErrHTTPCli = errors.New("http cli error") )
var ErrLoadKey = errors.New("load key error")
Functions ¶
func WrapWithWSSESoapEnvelope ¶
WrapWithWSSESoapEnvelope оборачивает XML документ в SOAP формат, а точнее записывает содержимое под тегом soap:Body
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) GetCertFromCMS ¶
func (cli *Client) GetCertFromCMS(cms []byte) ([]*x509.Certificate, error)
GetCertFromCMS обеспечивает получение сертификата из CMS.
func (*Client) GetCertFromXML ¶
func (cli *Client) GetCertFromXML(xml string) ([]*x509.Certificate, error)
GetCertFromXML обеспечивает получение сертификата из XML.
func (*Client) GetSigAlgFromXML ¶
GetSigAlgFromXML обеспечивает получение алгоритма подписи из XML.
func (*Client) GetTimeFromSig ¶
GetTimeFromSig получает время подписания из CMS в кодировке DER. Если вы хотите пeредать данные подписи в base64 формате, то установите флаг base64 = true
func (*Client) LoadCertFromBytes ¶
func (*Client) LoadKeyStore ¶
LoadKeyStore загружает PKCS12.
func (*Client) LoadKeyStoreFromBytes ¶
LoadKeyStoreFromBytes загружает PKCS12.
func (*Client) SetProxyOff ¶
Отключает использование прокси сервера.
func (*Client) SetProxyOn ¶
Включает использование прокси сервера.
func (*Client) SignHash ¶
func (cli *Client) SignHash(input *types.SignHashInput) (signedHash []byte, err error)
SignHash подписывает hash и возвращает CMS с подписью.
func (*Client) SignXML ¶
func (cli *Client) SignXML(input *types.SignXMLInput) (string, error)
SignXML подписывает данные в формате XML.
func (*Client) ValidateCert ¶
func (cli *Client) ValidateCert(input *kalkanTypes.ValidateCertInput) (string, error)
func (*Client) Verify ¶
func (cli *Client) Verify(input *types.VerifyInput) (string, error)
Verify обеспечивает проверку подписи CMS в base64.
func (*Client) VerifyDetached ¶
VerifyDetached обеспечивает проверку отделенной подписи CMS (detached signature) в base64.
func (*Client) VerifyXML ¶
func (cli *Client) VerifyXML(input *types.VerifyXMLInput) (result string, err error)
VerifyXML обеспечивает проверку подписи данных в формате XML.
func (*Client) X509CertificateGetInfo ¶
func (cli *Client) X509CertificateGetInfo(input *x509.Certificate) (*types.CertificateInfo, error)
X509CertificateGetInfo Обеспечивает получение значений полей/расширений из сертификата в виде структуры *types.CertificateInfo.
func (*Client) X509ExportCertificateFromStore ¶
func (cli *Client) X509ExportCertificateFromStore() (cert *x509.Certificate, err error)
X509ExportCertificateFromStore экспортирует сертификат из хранилища в формате PEM или в кодировке BASE64
type Option ¶
type Option func(o *Options)
func WithCerts ¶
func WithCerts(c []OptionsCert) Option
func WithLogger ¶
func WithRemoteProdCerts ¶
func WithRemoteTestCerts ¶
type Options ¶
type Options struct { TSP string `json:"tsp"` // URL метки времени OCSP string `json:"ocsp"` // URL сервиса онлайн проверки статуса сертификата Certs []OptionsCert `json:"certs"` // Корневые сертификатам LoadCerts bool `json:"load_certs"` // contains filtered or unexported fields }
type OptionsCert ¶
type OptionsCert struct { Cert *x509.Certificate Type ckalkan.CertType }