时间戳的基本概念

2023-10-28

1、什么是时间戳

    时间戳是指格林威治时间自1970年1月1日(00:00:00 GMT)至当前时间的总秒数。它也被称为Unix时间戳(Unix Timestamp)。通俗的讲,时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。

2、时间戳的分类

    1、自建时间戳:此类时间戳是通过时间接收设备(如GPS,CDMA,北斗卫星)来获取时间到时间戳服务器上,并通过时间戳服务器签发时间戳证书。此种时间戳可用来企业内部责任认定,在法庭认证是并不具备法律效力。因其在通过时间接收设备接收时间存在被篡改的可能,故此不能作为法律依据。

    2、具有法律的效力的时间戳:它是由我国中科院国家授时中心与北京联合信任技术服务有限公司负责建设的我国第三方可信时间戳认证服务。由国家授时中心负责时间的授时与守时检测,因其守时监测功能而保障时间错证书中的时间的正确性和不被篡改。获取时间戳平台有“大众版权保护平台”,可与我国中科院授时中心时间同步。

3、时间戳的组成部分

    时间戳(time-stamp)是一个经加密后形成的凭证文档,它包括三个部分:

        1、需加时间戳的文件的摘要(digest)

        2、DTS收到文件的日期和时间

        3、DTS的数字签名

    一般来说,时间戳产生的过程为:用户首先将需要加时间的文件用Hash编码加密形成摘要,然后将该摘要发送到DTS,DTS在加入了收到文件摘要的日期和时间信息后再对该文件加密(数字签名),然后送回用户。

    书面签署文件的时间是由签署人知己写上的,而数字时间戳则不然,它是有认证单位DTS来加的,以DTS收到文件的时间为依据。

如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)?
Java    time
JavaScript    Math.round(new Date().getTime()/1000)
getTime()返回数值的单位是毫秒
Microsoft .NET / C#    epoch = (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000
MySQL    SELECT unix_timestamp(now())
Perl    time
PHP    time()
PostgreSQL    SELECT extract(epoch FROM now())
Python    先 import time 然后 time.time()
Ruby    获取Unix时间戳:Time.now 或 Time.new
显示Unix时间戳:Time.now.to_i
SQL Server    SELECT DATEDIFF(s, '1970-01-01 00:00:00', GETUTCDATE())
Unix / Linux    date +%s
VBScript / ASP    DateDiff("s", "01/01/1970 00:00:00", Now())
其他操作系统
(如果Perl被安装在系统中)    命令行状态:perl -e "print time"
如何在不同编程语言中实现Unix时间戳(Unix timestamp) → 普通时间?
Java    String date = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new java.util.Date(Unix timestamp * 1000))
JavaScript    先 var unixTimestamp = new Date(Unix timestamp * 1000) 然后 commonTime = unixTimestamp.toLocaleString()
Linux    date -d @Unix timestamp
MySQL    from_unixtime(Unix timestamp)
Perl    先 my $time = Unix timestamp 然后 my ($sec, $min, $hour, $day, $month, $year) = (localtime($time))[0,1,2,3,4,5,6]
PHP    date('r', Unix timestamp)
PostgreSQL    SELECT TIMESTAMP WITH TIME ZONE 'epoch' + Unix timestamp) * INTERVAL '1 second';
Python    先 import time 然后 time.gmtime(Unix timestamp)
Ruby    Time.at(Unix timestamp)
SQL Server    DATEADD(s, Unix timestamp, '1970-01-01 00:00:00')
VBScript / ASP    DateAdd("s", Unix timestamp, "01/01/1970 00:00:00")
其他操作系统
(如果Perl被安装在系统中)    命令行状态:perl -e "print scalar(localtime(Unix timestamp))"
如何在不同编程语言中实现普通时间 → Unix时间戳(Unix timestamp)?
Java    long epoch = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").parse("01/01/1970 01:00:00");
JavaScript    var commonTime = new Date(Date.UTC(year, month - 1, day, hour, minute, second))
MySQL    SELECT unix_timestamp(time)
时间格式: YYYY-MM-DD HH:MM:SS 或 YYMMDD 或 YYYYMMDD
Perl    先 use Time::Local 然后 my $time = timelocal($sec, $min, $hour, $day, $month, $year);
PHP    mktime(hour, minute, second, day, month, year)
PostgreSQL    SELECT extract(epoch FROM date('YYYY-MM-DD HH:MM:SS'));
Python    先 import time 然后 int(time.mktime(time.strptime('YYYY-MM-DD HH:MM:SS', '%Y-%m-%d %H:%M:%S')))
Ruby    Time.local(year, month, day, hour, minute, second)
SQL Server    SELECT DATEDIFF(s, '1970-01-01 00:00:00', time)
Unix / Linux    date +%s -d"Jan 1, 1970 00:00:01"
VBScript / ASP    DateDiff("s", "01/01/1970 00:00:00", time)
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

时间戳的基本概念 的相关文章

  • Netbeans 8.1 Gnome 3 GTK+ UI 字体和选项卡高度

    我刚刚在运行 GNOME 3 桌面的 Ubuntu 16 04 上安装了 NetBeans 8 1 如果可能的话 我想继续使用 IDE 的 GTK 外观和感觉 但 UI 上的字体 尤其是选项卡中的字体 太小且重叠 我尝试添加 fontsiz
  • 带路径压缩算法的加权 Quick-Union

    有一种 带路径压缩的加权快速联合 算法 代码 public class WeightedQU private int id private int iz public WeightedQU int N id new int N iz new
  • TreeMap 删除所有大于某个键的键

    在项目中 我需要删除键值大于某个键的所有对象 键类型为Date 如果重要的话 据我所知TreeMapJava中实现的是红黑树 它是一种二叉搜索树 所以我应该得到O n 删除子树时 但除了制作尾部视图并一一删除之外 我找不到任何方法可以做到这
  • 与 Eclipse 中的 Java Content Assist 交互

    作为我的插件项目的一部分 我正在考虑与 Eclipse 在 Java 文件上显示的内容辅助列表进行交互 我正在尝试根据一些外部数据对列表进行重新排序 我看过一些有关创建新内容辅助的教程 但没有看到有关更改现有内容辅助的教程 这可能吗 如果是
  • Android:文本淡入和淡出

    我已阅读此 stackoverflow 问题和答案 并尝试实现文本淡入和淡出 Android中如何让文字淡入淡出 https stackoverflow com questions 8627211 how to make text fade
  • 什么是抽象类? [复制]

    这个问题在这里已经有答案了 当我了解抽象类时 我说 WT H 问题 创建一个无法实例化的类有什么意义呢 为什么有人想要这样的课程 什么情况下需要抽象类 如果你明白我的意思 最常见的是用作基类或接口 某些语言有单独的interface构建 有
  • Android studio - 如何保存先前活动中选择的数据

    这是我的代码片段 这Textview充当按钮并具有Onclicklistner在他们 当cpu1000时Textview单击它会导致cpu g1000其代码如下所示的类 public class Game 1000 extends AppC
  • 将非 Android 项目添加到 Android 项目

    我在 Eclipse 中有三个项目 Base Server 和 AndroidClient Base和Server是Java 1 7项目 而AndroidClient显然是一个android项目 基础项目具有在服务器和 Android 客户
  • Android 无法解析日期异常

    当尝试解析发送到我的 Android 客户端的日期字符串时 我得到一个无法解析的日期 这是例外 java text ParseException 无法解析的日期 2018 09 18T00 00 00Z 位于 偏移量 19 在 java t
  • Java Applet 中的 Apache FOP - 未找到数据的 ImagePreloader

    我正在研究成熟商业产品中的一个问题 简而言之 我们使用 Apache POI 库的一部分来读取 Word DOC 或 DOCX 文件 并将其转换为 XSL FO 以便我们可以进行标记替换 然后 我们使用嵌入到 Java 程序中的 FOP 将
  • 如何在 ant 中为 junit 测试设置 file.encoding?

    我还没有完全完成file encoding 和 ant https stackoverflow com questions 1339352 how do i set dfile encoding within ants build xml
  • 从jar中获取资源

    我有包含文件的 jar myJar res endingRule txt myJar wordcalculator merger Marge class 在 Marge java 中我有代码 private static final Str
  • 如何将 HTML 链接放入电子邮件正文中?

    我有一个可以发送邮件的应用程序 用 Java 实现 我想在邮件中放置一个 HTML 链接 但该链接显示为普通字母 而不是 HTML 链接 我怎样才能将 HTML 链接放入字符串中 我需要特殊字符吗 太感谢了 Update 大家好你们好 感谢
  • 不可变的最终变量应该始终是静态的吗? [复制]

    这个问题在这里已经有答案了 在java中 如果一个变量是不可变的并且是final的 那么它应该是一个静态类变量吗 我问这个问题是因为每次类的实例使用它时创建一个新对象似乎很浪费 因为无论如何它总是相同的 Example 每次调用方法时都会创
  • 如何区分从 Saxon XPathSelector 返回的属性节点和元素节点

    给定 XML
  • hibernate 6.0.2.Final 和 spring boot 2.7.0 的entityManagerFactory bean 未配置问题

    所以最近我想升级我的 Spring Boot 项目项目的一些依赖项 特别是这些组件 雅加达 EE 9 弹簧靴2 7 休眠 6 0 2 Final 完成此操作后 所有更新和代码折射 更新将 javax 导入到 jakarta 以及一些 hib
  • 将 JScrollPane 添加到 JFrame

    我有一个关于向 Java 框架添加组件的问题 我有一个带有两个按钮的 JPanel 和一个添加了 JTable 的 JScrollPane 我想将这两个添加到 JFrame 中 我可以将 JPanel 添加到 JFrame 或将 JScro
  • Java/Python 中的快速 IPC/Socket 通信

    我的应用程序中需要两个进程 Java 和 Python 进行通信 我注意到套接字通信占用了 93 的运行时间 为什么通讯这么慢 我应该寻找套接字通信的替代方案还是可以使其更快 更新 我发现了一个简单的修复方法 由于某些未知原因 缓冲输出流似
  • Java RMI - 客户端超时

    我正在使用 Java RMI 构建分布式系统 它必须支持服务器丢失 如果我的客户端使用 RMI 连接到服务器 如果该服务器出现故障 例如电缆问题 我的客户端应该会收到异常 以便它可以连接到其他服务器 但是当服务器出现故障时 我的客户端什么也
  • java'assert'和'if(){}else exit;'之间的区别

    java和java有什么区别assert and if else exit 我可以用吗if else exit代替assert 也许有点谷歌 您应该记住的主要事情是 if else 语句应该用于程序流程控制 而assert 关键字应该仅用于

随机推荐

  • 系统用户名为中文导致PowerShell无法正确操作conda

    本文叙述的问题诱因 系统用户名为中文 本文最后给出了解决方案 并给出了原理猜测 conda版本 4 10 3 系统版本 Win11 专业版 21H2 现象 我在Win11使用Powershell时 发现终端提示 conda没有被初始化 需要
  • Spring系列篇--关于Spring Bean完整的生命周期【附有流程图,超级易懂】

    Welcome Huihui s Code World 接下来看看由辉辉所写的关于Spring的相关操作吧 目录 Welcome Huihui s Code World 一 Spring Bean是单例模式还是多例模式 二 论证Bean是单
  • AMD历代CPU发布时间

    1969年5月1日 AMD公司以10万美元的启动资金正式成立 1997 AMD推出AMD K6处理器 1998 AMD在微处理器论坛上发布AMD速龙处理器 以前的代号为K7 1999 AMD推出AMD速龙处理器 它是业界第一款支持Micro
  • ioctl函数详细分析

    IPv4 和 IPv6 的网络接口操作使用套接字 ioctl 命令 级别 中级 Katiyar Manish manish katiyar in ibm com 软件工程师 IBM Intel Microsoft HPShweta Gupt
  • 显式调用构造函数和析构函数

    今天跟同事聊天 他说到STL源码有用到显示调用析构函数 试一了一下 果然能行 include lt iostream gt using namespace std class MyClass public MyClass cout lt l
  • SqlServer傻瓜教程 — 表备份

    大家好 我们知道类似于ERP这种大型软件 最大的难点就在庞大数据库的整理和维护 表备份顾名思义 是对一个表进行备份 那么我们什么时候需要表备份呢 表备份是在操作大型ERP数据库的某一个表中有重要数据的时候 测试你对此表操作的存储过程 或者测
  • pytorch下import numpy失败_PyTorch的编译系统

    背景 本文以PyTorch 1 0为基础 PyTorch的编译首先是python风格的编译 使用了python的setuptools编译系统 以最基本的编译安装命令python setup py install 为例 这一编译过程包含了如下
  • 两台linux服务器互相自动备份

    将数据同步到其它服务器这里使用Linux同步文件工具rsync来进行文件的同步 rsync rsync是类unix系统下的数据镜像备份工具 remote sync 一款快速增量备份工具 Remote Sync 远程同步 支持本地复制 或者与
  • 【教3妹学算法-leetcode】数组能形成多少数对

    插 前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住分享一下给大家 点击跳转到网站 坚持不懈 越努力越幸运 大家一起学习鸭 3妹 这么热的天气还要持续多久啊 快要被热死了 2哥 感觉还要有一阵子 今天刚入伏 3妹 啊 今年
  • 三极管的工作原理详解,图文+案例

    什么是三极管 三极管全称是 晶体三极管 也被称作 晶体管 是一种具有放大功能的半导体器件 通常指本征半导体三极管 即BJT管 典型的三极管由三层半导体材料 有助于连接到外部电路并承载电流的端子组成 施加到晶体管的任何一对端子的电压或电流控制
  • C语言程序设计 例7-5

    例7 5 原题 选择排序法 输入一个正整数n 1
  • C++解释器模式:Interpreter Pattern

    当有语言要解释时 请使用解释器模式为语言创建解释器 解释器模式的核心是解释器类 在解释器模式中一般会定义两种解释器 终结符解释器 Terminal Expression Interpreter 终结符解释器用于解释语言中的基本单位 对应语法
  • [架构之路-210]- 人人都是产品经理 - 互联网产品解决用户需求的分析思路和方法笔记

    目录 前言 一 产品需求分析思路和方法 产品需求 1 产品需求的内涵 什么是产品 什么是需求 需求的产品的关系 案例分析 理解需求的误区 2 需求的分类及层次 规律 拆解用户需求 需求分类 需求层次 马斯洛需求层次理论 需求层次的规律 拆解
  • K-means聚类之一(多维整型数据)

    算法介绍 k means 算法接受输入量 k 然后将n个数据对象划分为 k个聚类以便使得所获得的聚类满足 同一聚类中的对象相似度较高 而不同聚类中的对象相似度较小 聚类相似度是利用各聚类中对象的均值所获得一个 中心对象 引力中心 来进行计算
  • javascript对象概念大全

    http www css88 com archives 512 本文介绍了几乎所有关于对象的基本概念 什么是对象 如何创建对象 对象的属性的设置和读取 删除属性的方法 构造函数 对象原型 父类 子类 继承等等 1 对象 对象是一种复合数据类
  • Python爬虫小程序

    import base64 import string import time from selenium import webdriver from selenium webdriver chrome service import Ser
  • 【Docker技术入门与实践(第2版)】Docker入门_学习笔记

    第一章 1 Docker入门须知 1 1 Docker基本知识 Docker是基于Go语言实现的开源容器项目 诞生于2013年年初 最初发 起者是dotCloud公司 Docker自开源后受到广泛的关注和讨论 目前已有多个相关项目 包括Do
  • OpenCV中GPU模块(CUDA)函数

    The OpenCV GPU module is a set of classes and functions to utilize GPU computational capabilities It is implemented usin
  • java读取excel中的数据(包括.xlsx和.xls)

    java读取excel中的数据 包括 xlsx和 xls java读取excel文件中的数据常用jxl和poi两种方式 其中最主要的区别在于jxl不支持 xlsx 而poi支持 小编平时用的比较多的是poi的方式 所以今天小编介绍的也是po
  • 时间戳的基本概念

    1 什么是时间戳 时间戳是指格林威治时间自1970年1月1日 00 00 00 GMT 至当前时间的总秒数 它也被称为Unix时间戳 Unix Timestamp 通俗的讲 时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证