当前位置: 首页 > news >正文

贵州省建设厅网站造价工程信息网武进网站建设基本流程

贵州省建设厅网站造价工程信息网,武进网站建设基本流程,四川网站建设外包业务,网易邮箱163 com登录文章目录 第二十五章 添加数字签名数字签名概述添加数字签名 第二十五章 添加数字签名 本主题介绍如何向 IRIS Web 服务和 Web 客户端发送的 SOAP 消息添加数字签名。 通常,会同时执行加密和签名。为简单起见,本主题仅介绍签名。有关结合加密和签名的信…

文章目录

  • 第二十五章 添加数字签名
  • 数字签名概述
  • 添加数字签名

第二十五章 添加数字签名

本主题介绍如何向 IRIS Web 服务和 Web 客户端发送的 SOAP 消息添加数字签名。

通常,会同时执行加密和签名。为简单起见,本主题仅介绍签名。有关结合加密和签名的信息,请参阅主题结合加密和签名。

主题使用派生密钥令牌进行加密和签名描述了向 SOAP 消息添加数字签名的另一种方法。

数字签名概述

可以使用数字签名来检测消息是否被篡改,或者简单地验证消息的某一部分是否确实由所列实体生成。与传统的手工签名一样,数字签名是对文档的附加,只有文档的创建者才能创建,并且不容易伪造。

IRISSOAP 消息的数字签名的支持基于 WS-Security 1.1。反过来,WS-Security 遵循 XML 签名规范。根据后者的规范,要对 XML 文档进行签名:

  1. 使用摘要函数来计算文档一个或多个部分的哈希值。
  2. 将摘要值连接起来。
  3. 使用私钥加密串联摘要。(这是只有才能执行的计算。)
  4. 创建 <Signature> 元素,其中包含以下信息:
  • 对已签名部分的引用(以表明该签名适用于消息的哪些部分)。
  • 加密的摘要值。
  • 使接收者能够识别用于解密加密摘要值的公钥的信息。

此信息可以包含在<Signature>元素中,或者 <Signature> 元素可以包含对包含 X.509 证书或签名的 SAML 断言的二进制安全令牌的直接引用。在后一种情况下,必须在添加 <Signature>元素之前将安全令牌添加到消息中。

此信息还可以让收件人验证您是公钥/私钥对的所有者。

使用派生密钥令牌进行加密和签名主题介绍了一种向 SOAP 消息添加数字签名的替代方法。消息本身的细节各不相同,但一般过程是相同的,并遵循 XML 签名规范:生成签名部分的摘要,加密摘要,并包含一个 <Signature> 元素,其中包含使收件人能够验证签名和解密加密摘要的信息。

添加数字签名

要对 SOAP 消息进行数字签名,可以使用此处的基本过程或本主题后续部分中描述的变体。

首先,下图概括了这个过程:

在这里插入图片描述

具体过程如下:

  1. 可选择包含 %soap.inc 包含文件,它定义了可能需要使用的宏。
  2. 如果要对任何安全标头元素进行签名,请创建这些安全标头元素。例如:
 set utoken=##class(%SOAP.Security.UsernameToken).Create("_SYSTEM","SYS")
  1. 创建 %SYS.X509Credentials 实例,如以编程方式检索凭证集中所述。此 IRIS 凭证集必须包含自己的证书,并且必须提供私钥密码(如果尚未加载)。例如:
 Set x509alias = "servercred" Set pwd = "mypassword" Set credset = ##class(%SYS.X509Credentials).GetByAlias(x509alias,mypassword)
  1. 创建包含与该凭证集关联的证书的二进制安全令牌。为此,调用 %SOAP.Security.BinarySecurityTokenOCreateX509Token() 类方法。例如:
 set bst=##class(%SOAP.Security.BinarySecurityToken).CreateX509Token(credset)

此方法返回代表 <BinarySecurityToken> 标头元素的 %SOAP.Security.BinarySecurityToken实例。

  1. 将此令牌添加到 WS-Security 标头元素。为此,请调用 Web 客户端或 Web 服务的 SecurityOut 属性的 AddSecurityElement() 方法。对于方法参数,请使用刚刚创建的令牌。例如:
 do ..SecurityOut.AddSecurityElement(bst)
  1. 根据二进制安全令牌创建 <Signature> 元素。为此,调用 %XML.Security.Signature的 CreateX509() 类方法。例如:
 set dsig=##class(%XML.Security.Signature).CreateX509(bst)

此方法返回 %XML.Security.Signature 的实例,该实例表示 &<Signature>标头元素。<Signature> 元素适用于消息的一组默认部分;可以指定一组不同的部分。

正式地,该方法具有以下签名:

classmethod CreateX509(credentials As %SYS.X509Credentials = "", signatureOptions As %Integer, referenceOption As %Integer, Output status As %Status) as %XML.Security.Signature
  • credentials - 凭据要么是实例中的 %SYS.X509Credentials,要么是实例中的 %SAML.Assertion,要么是实例中的 %SOAP.Security.BinarySecurityToken
  • signatureOptions 指定要签名的部分。此选项在将数字签名应用于特定消息部分中进行了描述。
  • referenceOption 指定要创建的引用类型。有关详细信息,请参阅 X.509 凭证的引用选项。
  • status 表示该方法是否成功。
  1. 将数字签名添加到 WS-Security 标头元素。为此,请调用 Web 客户端或 Web 服务的 SecurityOut 属性的 AddSecurityElement() 方法。对于参数,请指定上一步中创建的签名对象。例如:
 do ..SecurityOut.AddSecurityElement(dsig)
  1. 发送 SOAP 消息。请参阅添加安全标头元素中的一般注释。
http://www.yayakq.cn/news/385171/

相关文章:

  • 备案期间 需要关闭网站吗一起装修网北京总部官网
  • cnzz统计代码放在网站黄山网站seo
  • 沈阳世纪兴网站制作公司wordpress后台不能拖动
  • 齐河网站建设价格电商网站开发团队
  • 做的网站乱码怎么搞口腔网站设计图
  • 响水做网站的做logo的著名网站
  • 电商平台网站建设合同免费自助建站模板
  • 长沙网站建设 599成华区响应式网站建设
  • 北京建网站价格兰州网站制作公司怎么样
  • 怎么做网站的轮播图微信小程序开发教程官方文档
  • 南坪做网站网站建设合作合同
  • 物流网站和数据库建设福田蒙派克9座商务车报价及图片
  • 百度浏览器官方网站led灯笼河网站建设
  • 中国化学工程第九建设公司网站衡阳seo外包
  • 做网站编辑的感受免费招收手游代理内服号
  • 网站的专题怎么做网投网站如何建设
  • 郴州北京网站建设做摄影网站的公司
  • 免费做暧暧网站网站开发工程师php岗位职责
  • 电子商务网站建设 项目规划书怎么看一个网站是谁做的
  • 企业网站改版方案温州企业网站排名优化
  • 手机h5建网站口碑好的做网站
  • 重庆网站建设mlfartwordpress短代码显示
  • 云南网站制作怎么计费网站费用怎么做分录
  • 美食网站二级页面模板网站网上商城建设
  • 电商自建站学网站开发前景
  • 企业网站的首页信阳做网站推广信阳网站建设
  • 国外访问国内网站速度广州做淘宝的化妆品网站好
  • 盘锦做网站选哪家百度站长怎么验证网站
  • 个人宽带备案网站做网站做生意
  • 环保网站建设费用手机行情网报价实时查询