各个品牌的代码签名中都有时间戳,是干啥用的?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了各个品牌的代码签名中都有时间戳,是干啥用的?相关的知识,希望对你有一定的参考价值。

为了避免签名证书到期后需要重签软件和重新发布, 必须使用提供的时间戳服务。当您对代码签名时,代码产生的哈希值将发送给时间戳服务器进行时间戳反签名。这样,当用户下载签名代码后, IE浏览器将进行鉴别:
(1) 用已经吊销的代码签名证书签名的代码不会被信任;
(2) 用有效的代码签名证书签名的代码,即使代码签名证书已经到被吊销,但代码仍然是可以信任的。这意味着您不用担心代码签名证书吊销后需要重新签名代码。
时间戳服务是代码签名证书配套服务,是为了方便软件开发商可以不用担心由于代码签名证书过期而影响在有效期内已经签名的代码的正常的使用,也就是说,在代码签名证书有效期内签名的代码永远不会过期。
参考技术A 客户端在向服务端接口进行请求,如果请求信息进行了加密处理,被第三方截取到请求包,可以使用该请求包进行重复请求操作。如果服务端不进行防重放攻击,就会服务器压力增大,而使用时间戳的方式可以解决这一问题。
防篡改:一般使用的方式就是把参数拼接,当前项目AppKey,双方约定的“密钥”,加入到Dictionary字典集中,按ABCD顺序进行排序,最后在MD5+加密。客户端将加密字符串和请求参数一起发送给服务器。
服务器按照上述规则拼接加密后,与传入过来的加密字符串比较是否相等
防复用:需要在客户端和服务端分别生成UTC的时间戳,这个UTC是防止你的客户端与服务端不在同一个时区,然后把时间戳timestamp拼在密文里就可以了。
参考技术B

时间戳会一直留在软件上的签名,在代码签名证书过期后,保证软件仍旧被操作系统或其他平台兼容,并能正常运行。当签名被检验时,时间戳会允许系统检查签名的有效性,而不是签名时间,或软件运行的当前时间。如果没有时间戳,签名就会根据当前日期进行检测。如果开发者的软件是几年前分发的,当其代码签名证书过期时,该签名就不再有效。那么用户在运行该软件时,就会受到平台的拦截运行。

每次用户运行时,系统都会检查可执行文件上的签名。这意味着如果软件的代码签名证书过期并且没有时间戳的话,软件将突然停止为所有用户工作。对于大多数软件开发者说来,都希望其开发的软件能够被用户长期使用。因此代码签名证书的时间戳具有重要的功能,因为它可确保软件能长期运行。

时间戳本身是由CA签名并加以保护,使其不受篡改或欺骗以及密码保护。在Windows上,如果软件提供代码签名证书的CA不受信任,时间戳还可确保签名保持有效。

解决方式:ssldun的代码签名证书符合标准

参考技术C 我不知道哎。这个东西都是内部才清楚的,而且他们都是非常隐蔽的

hybris 中的 hjmpts 列是干啥用的?

【中文标题】hybris 中的 hjmpts 列是干啥用的?【英文标题】:What is the hjmpts column in hybris for?hybris 中的 hjmpts 列是干什么用的? 【发布时间】:2017-10-10 05:38:04 【问题描述】:

我有一个 Hybris 系统,在每个数据库表中都有一个名为“hjmpts”的列。该列包含 INT 值。有人知道这个专栏的原因吗?

【问题讨论】:

【参考方案1】:

它旨在支持乐观锁定,就像 Hibernate 这样的持久层使用@Version 注解所做的那样。

基本上,当您从数据库中选择一行并返回当前版本时。当行更新时,版本列会增加。当您更新行时,您在查询中使用 WHERE 子句以匹配您选择的版本。如果更新没有修改任何行,那么您知道其他东西同时更新了该行(和版本)。

hjmp.throw.concurrent.modification.exceptions(default false) 是一个配置参数,它启用或禁用在更新时检查项目行是否必须与获取 HJMP 实体对象时读取的版本相同。

这意味着在属性中将 hjmp.throw.concurrent.modification.exceptions 参数设置为 true 会激活乐观锁定,当然会增加看到乐观并发异常的风险,例如 HJMPException(PK 已同时修改 - 预期版本 ...),这将强制事务回滚


P.S:如果不开启乐观锁,只会写入脏属性,最终结果是合并。

【讨论】:

如果我们想对特定模型进行乐观锁应该怎么做?有可能吗?

以上是关于各个品牌的代码签名中都有时间戳,是干啥用的?的主要内容,如果未能解决你的问题,请参考以下文章

这个“1342177280”标志是干啥用的?

数据库都有哪些种类?分别是干啥用的?

PHP 的 serialize() 函数是干啥用的?

SendMessage函数是干啥用的 它都有哪些参数

pycharm是干啥用的?

vscode是干啥用的