数字化曲线

2024-08-10

数字化曲线(共8篇)

数字化曲线 篇1

随着计算机技术的发展, 数字化施工方法在基坑、隧道、边坡、桥梁等工程中得到了越来越多的应用, 但在高速公路上的应用尚不多见。随着在软土地基上修建高速公路数量的增加, 软土地基的稳定和沉降问题成为广大技术人员必须面对的主要问题。因此, 在高速公路软土地基路堤开展数字化施工具有非常重要的意义。

1工程简介

浙江某高速公路位于杭嘉湖平原区, 其大部分路段穿越软土地基, 且沿线河网交错, 村庄密布, 结构物众多, 填土高度高。全线软土为高含水量、高压缩性、低强度、低渗透性, 局部路段为深厚软土地基, 全线现已布置了上千块沉降板。

在长三角地区进行高速公路的建设中, 软基监测是软基处理施工中观测路堤稳定性、控制路堤填筑进度、判断软基处理效果的重要手段之一。为了掌握施工过程中的地面沉降、淤泥层排水固结等情况, 保证施工质量并为预压土卸载提供技术依据, 做到数字化施工, 在软基处理施工中, 必须进行现场监测。软基处理监测的主要内容包括淤泥表面沉降板监测、分层沉降监测等。

本文对软基沉降监测中的关键环节, 即荷载—时间—沉降 (PTS) 曲线及参数化的程序界面和样板底图的标准化设计进行了相关的研究和实现。

2Excel和AutoCAD中使用VBA编程处理数据

VBA是Visual Basic for Application的缩写, 是一种简单易用的宏语言, 它被嵌入在AutoCAD, Office等应用软件中, 主要基于Visual Basic for Windows发展而来, 两者有着相似的语言结构, 严格地说VBA是VB的子集。VBA为程序设计者提供了面向对象的程序设计方法, 提供了一套完整的程序设计语言。

运用Excel能轻松的处理我们平时需要大量计算的问题, 而Excel VBA编程, 则是一种基于Excel的VB在Windows环境下的开发应用型语言。它是VB的一个子集, 可以广泛应用于包括Excel在内的各种软件。

在Autodesk公司开发AutoCAD R14版的后期, 又推出了基于ActiveX Automation (自动化) 技术的新型开发方式。

3系统结构及功能

系统的体系结构逻辑上分为3层, 即表示层、业务层和数据层。表示层提供给用户可视化的操作界面;业务层采用VBA技术标准, 使用Excel VBA宏组件和AutoCAD ActiveX VBA组件予以实现;数据层用于保存监测原始数据、计算结果和生成曲线需要的文字说明等数据。

AutoCAD VBA工程文件一般包括:AutoCAD对象、窗体模块、标准模块、类模版和引用等。最常用的是窗体模块, 它可以包括描述窗体及其控件的各种事件过程、通用过程和变量的窗体模块级声明。通用的参数化自动绘图事件过程的程序框图如图1所示。

4系统实现及应用

4.1 样板底图的设计

开发土木工程设计、施工等图形类的参数绘图应用程序, 首先要考虑绘图标准、图形副图、绘图单位、标题栏、通用的符号特性表以及文字样式和标注样式等。选择或设计一张 (套) 样板图是一种简便有效的方法。根据样板图生成的图形文件, 将能适用于该类图形的绘图标准和绘图环境。

AutoCAD 2007带有多种样式的样板图, 若已有的样板图不能满足使用需要, 可利用中文版的通用样板图更改设计为专用的样式, 然后再按.dwt存盘即可。应该注意的是, 如能满足需要, 要尽量采用低版本的通用样板图更改设计为专用的样板图。这样设计出的专用样式样板图, 能适用于从低到高各种版本的AutoCAD绘图软件。本系统设计的PTS样板底图如图2所示。

4.2 软件系统界面的设计

点击“打开Excel文档”按钮, 按默认路径加载监测Excel监测数据表, 并将当前Excel表标签的沉降板里程文字自动读取到软件系统界面标签栏内, 避免人工录入时的差错, 实现结果如图3所示。生成的PTS曲线效果图见图4。加入待有容错功能的读取Excel表格单元数据的程序代码如下所示:

On Error Resume Next

Set xlApp = GetObject (, “excel.application”)

If Err <> 0 Then

Err.Clear

Set xlApp = CreateObject (“excel.application”)

If Err <> 0 Then

MsgBox“无法启动excel”

Exit Sub

End If

End If

xlApp.Visible = True

xlApp.WindowState = acMax

Dim dwtname As String

dwtname = “E:浙江某高速软基沉降PTS生成系统浙江某高速软基沉降PTS生成系统.xls"

xlApp.Workbooks.Open dwtname

Set xlSheet = xlApp.ActiveWorkbook.ActiveSheet

xlApp.Visible = True

STBox.Caption = ActiveSheet.Name

5结语

1) AutoCAD既是一个具有强大功能的CAD系统, 又是一个具有良好开放性接口的开发平台。其内嵌的VBA开发工具和AutoCAD共享内存空间, 其运行速度比用其他语言 (如ADS, Lisp) 要快得多, 实现了Windows平台上多个应用程序的无隙集成。而且由于VBA采用了与VB类似的可视化的开发环境, 它具有与VB相同的语法结构, 所以用VBA来开发程序开发效率较高, 开发周期相对于其他语言可以大大缩短。2) 软基沉降监测工作包括现场量测、监测数据的录入、维护与数据处理。其中, 监测数据的计算与分析、报表制作、图形绘制的工作量较大。本系统实现了表格单元数据的自动读取、软基沉降监测项目的数据计算、曲线图制作与绘图功能, 使繁重、单调的工作变得轻松、快捷、高效。3) 本监测系统采用面向对象的分析和设计方法, 采用三层体系结构, 具有易维护、易扩展的特点。同时本文给出了生成PTS曲线的标准样板底图, 在标准样板底图上进行参数化设计有利于统一、快速、准确、高效地生成实时曲线, 并可在PTS曲线参数化系统软件的基础上进一步开发类似软基工后沉降曲线模拟的功能模块, 因此本系统软件还有待进一步完善和功能的扩充。

参考文献

[1]朱合华, 姜勇.复杂地质条件下隧道信息化施工综合技术研究[J].岩石力学与工程学报, 2002, 21 (S2) :2548-2553.

[2]程强, 黄绍槟, 周永江.公路深挖路堑边坡工程施工监测与动态设计[J].岩石力学与工程学报, 2005, 24 (8) :1335-1340.

[3]杨国祥, 李侃, 赵锡宏, 等.大型超深基坑工程信息化施工研究——上海外环隧道的浦西基坑工程[J].岩土工程学报, 2003, 25 (4) :483-487.

[4]王在泉, 王建波.复杂边坡工程稳定性监测及信息施工[J].中国矿业大学学报, 2000, 29 (6) :587-591.

[5]林良荣.信息技术在铁路桥梁桩基托换中的应用[J].长沙铁道学院学报, 2003, 21 (3) :41-46.

数字化曲线 篇2

宏基集团创始人施振荣就用这条弧线来诠释IT业务链上不同的附加值与利润率。在施振荣看来,IT行业的利润率向业务链的上游——核心部件供应商集中;同时处于业务链下游的市场营销,利润空间也较大;而处于弧线中间的加工制造业务,则利润越来越薄。施振荣把这条弧线叫做“微笑曲线”。

“微笑曲线”也可以解释为:在研发-制造-营销链条上,利润向两端集中,而中间的制造利润却不断下沉。

施振荣的“微笑曲线”,在经营哲学、企业战略层面上,都有非常强的解释力。它既是IT行业现状的描述,同时,也是对产业经济大趋势的规律性揭示。

但是,在日本,却有管理界人士提出了与“微笑曲线”完全相反的“武藏曲线”。这里的“武藏”是一种武士刀的名称。该刀形中间凸出,两端下沉。

“武藏曲线”认为:无论是研发,还是营销,本身并不创造价值,而只有制造过程才是创造价值。

在研发、制造、营销等经营环节日渐分离的今天,武藏曲线对企业经营现实的解释力明显不足。于是,武藏曲线论者把制造分成两类,一类是简单加工,另一类是“高度制造”,并指出,高度制造创造高附加值和高额利润。

武藏曲线不是虚无缥缈的文字理论图形游戏。它真实反映了日本企业界、管理界对制造的偏爱。而这种对制造的偏好,既是日本20世纪60-80年代末经济腾飞的基本动力,也是日本经济90年代至今持续衰退低迷的内在因素。

日本企业在制造过程中的控制能力举世无双,他们的产品设计短薄轻巧,员工具有工蜂般的近乎本能的敬业精神,以及日本式的精益生产模式,使得他们创造了持续30多年的经济增长奇迹。当日本产品扫荡、冲击全球之时,除了产品层面上的技术、品质、功能与性价比外,没有人注意到:在日本企业里的劳动力成本,相对欧美成熟市场国家,要低得多。到90年代,日本彻底消耗完了低成本优势:企业经营成本是中国的5倍,熟练工人的劳动力成本是韩国的7倍,中国的20倍。但是,他们的产品,却有相当比例要在同一市场上竞争。也许在细分市场上略有区别,但在性价比方面衡量,日本产品不再具有强劲竞争力。

以索尼为例,它的产品价格高出竞争对手们约10%,而利润率却只有区区0.8%。日本企业深陷成本困境,常常在微利与亏损之间徘徊。它们的股票也经历了多次高台跳水。有段时间,松下和索尼两家日本家电巨头的股票市值,加在一起,刚好跟韩国三星的市值持平。

面对日本国内高昂的成本因素,以及亏损压力,索尼董事长出井伸之仍然坚持把50%的制造业务保留在日本。

从索尼的营业额构成来看,美国占32%,日本占30%,欧洲占21%,其他地区占17%。中国市场只占索尼全球营业额的3%。

这些数据告诉我们,索尼的高端政策,使得他们把业务主要设置在成熟市场,或者说发达地区。这也没错。索尼毕竟有电器贵族之称,高昂的价格,适合在整体富裕的成熟市场销售。

但是,索尼的地产地销传统,却使索尼的成本居高不下。按照惯例,索尼通常只在自己设厂的市场销售产品。索尼在业绩腾飞时到美国、欧洲开设的工厂,以及在日本本土的工厂,现在都已经成为鸡肋,高昂的运营成本几乎完全吞噬了索尼的潜在利润。

在美国企业中,制造业务跟着成本走,或者采用外包,或者采用到低成本区去投资设厂,基本上都剥离出高成本区了。通过全球采购、全球制造和全球销售来实现成本降低,早已经是美国大企业的共识了。但索尼却是在亏损压力下,才认识到这种美式经营战略的含义。现在,索尼忙于关闭日本、美国的工厂,到低成本区投资设厂,这笔索尼称之为“重组费用”的支出,当不会少于百亿美元。

从地产地销到全球采购、全球制造,不仅仅是运营模式的转型,而且必须是企业核心价值和企业文化的转变。索尼是最早提出按照美式企业架构改组自身组织结构的日本企业,但是日本文化却不支持以价值认同和宽容理性为基础的全球采购和全球制造。只要看一看日本在华企业,就知道日本文化中对弱者的价值取向了。日本跨国公司在全球化过程中,很难迈过当地化这一关,特别是在经济发展不如日本的国家和地区。

松下是财富500强中在华投资时间最早,投资企业最多的跨国公司之一,它在中国有50多家企业,却只有2家企业的老总是华人。而且,松下是中国加入WTO后,最热心于“独资化运动”的企业之一。在美式企业理念中,全球化的过程,同时也是一个本土化的过程。而日本企业的全球化过程,却很有经济殖民的味道。也许,日式管理必须依赖于日本人的团体精神和敬业精神,非日本人难以融入其中。

索尼保留50%的制造业务在日本,松下的独资化运动,都表明日本企业对制造的偏爱与迷恋。这种偏爱与迷恋,曾经铸造了他们30年的辉煌,而现在,却是他们进步的绊马索。

日本管理界對自身战略理念上的缺失已经有了相当认识,他们中有人把日本企业90年代中期开始的战略再造叫做“美国化”。

还有四个星期,出井伸之将引退,美国人霍华德·斯丁格将走上索尼CEO岗位。也许斯丁格能把索尼董事们脑海中的武藏曲线擦洗、清理掉,为索尼的再次辉煌注入新理念、新动力。

数字化曲线 篇3

关键词:测井曲线,数字化,样条插值,波阻抗反演,VC++

0 引言

模拟测井曲线不利于保存和利用, 因此测井曲线数字化是一项重要的测井资料预处理工作。对于没有数字化存储的老井资料及纸质资料进行数字化转换是最佳的选择[1]。本文讨论的即是测井曲线的数字化处理。

测井资料具有较高的纵向分辨率, 而地震资料较好地记录了地层在横向上的变化。地震反演技术把二者的优势有机地结合起来, 该技术能够在现有地震资料的基础上大幅度提高地震的分辨率。本文最后应用基于模型地震反演技术获得高分辨率的地层波阻抗资料, 实现了薄层煤层分布的精细描述。

1 软件设计

软件开发工具采用VC++6.0。VC++6.0的特点在于可视化组件编程, 除提供功能强大的各种控件及可视化组件外, 还允许编程人员在组件库中构建自己的组件并让多个程序共享, 以提高源代码的使用效率。软件实现的功能是模拟测井曲线的数字化, 包括模拟曲线的数据采集、插值、格式化显示及存储。

1.1 数字化流程

数字化过程的主要步骤包括:

(1) 输入柱状图:利用Auto CAD打开要处理的矿区的柱状图文件;

(2) 绘制曲线:精细的将柱状图中的测井曲线高亮描绘出;

(3) 预处理曲线:只保留所需要的测井曲线, 将其他的背景内容忽略;

(4) 校验:查看、校对描出的曲线, 确保其与原柱状图中的测井曲线一致;

(5) 保存曲线数据:将预处理后的曲线保存为DXF二进制文件;

(6) 数字化处理:利用设计的软件选取要处理的文件, 即可提取其中有用的曲线数据 (因为DXF文件中包括很多AutoCAD文件图纸信息, 而这些信息对处理流程是没有用处的) 。然后可以设定参数对曲线数据进行处理, 最终格式化存入文档文件, 并显示出来, 供使用者观察比较。

由于各种原因, 测井曲线往往会产生各种偏差, 所以如果发现错误或者需要调整的数据, 可以选取软件中的“调整”功能, 即可实现根据某一深度的参数值来调整整个曲线的对应参数值。

1.2 设计思想

1.2.1 读取实体数据

DXF文件中值得最关注的是实体数据的读取, 具体流程如图1所示。

根据DXF文件的存储格式, 定义sz Line字符串数组, 每次读入一行字符串, 并利用VC++6.0内部定义的atof函数将其转变成浮点数。对生成的浮点数进行判断:是“10”, 则下一行数据为x轴方向的坐标值;是“20”, 则下一行数据为y轴方向的坐标值。同时还设计了Bool类型的变量flag, 如果不能保证“10”、“20”这样成对顺序出现的形式, 则flag值为false, 弹出提示框, 提示用户不是规定的文档。将读出的x轴、y轴方向的坐标值存入已定义的类型为XY结构体的数组tmp中。

1.2.2 采样、插值生成数据

经过仔细比较, 软件的插值算法采用了三次样条插值。

根据对话框设定的采样间隔来采样数据, 并根据插值算法生成插值, 然后将生成的采样值存入类型为XY结构体的数组_data中, 并以固定的格式写入TXT文件。最后通过“ShellExecute (NULL, “open”, “文件名.txt”, NULL, NULL, SW_SHOW) ;”来直接打开生成的TXT文件[2], 以供用户来实时观察结果。

1.2.3 调整采样值

打开欲进行调整的文档文件, 一次读出一行字符串并存入sz Line, 利用CString类型变量系统定义的Left、Right、Mid函数来分离深度及对应的密度、电阻率等值, 并分别对应存入_data.x、_data.y。根据在“调整”对话框中设定的调整参数, 计算出调整因子k, k=m_dmdepth-_data.y, 然后将k加到所有_data.y。最后将_data格式化写入相应的文本文件。也通过“Shell Execute (NULL, “open”, “文件名.txt”, NULL, NULL, SW_SHOW) ;”语句来直接打开生成的TXT文件[2], 以供用户来实时观察结果。

1.3 软件界面

软件界面如图2所示。

2 曲线数字化的应用

本次设计软件的目的是将测井曲线数字化, 并将其应用于地震反演。主要是在Strata系统上对阳泉二矿九采区的测井数据进行反演。基于模型的测井约束地震反演处理流程[3]如图3所示。

2.1 软件使用实例

阳泉二矿九采区2-35井的原始测井曲线截图如图4 (a) 所示。图4 (a) 曲线是resistivity曲线, 以该曲线为例。利用软件处理原始测井曲线, 得到采样、插值数据, 再用Grapher 4绘图软件读取存有这些数据的文档, 从而绘制出曲线, 如图4 (b) 所示。经比较可以发现, 图4 (b) 与图4 (a) 曲线拟合程度比较好, 说明软件的实用性较好。

2.2 阳泉二矿资料的反演

2.2.1 地质概况

测区主要可采煤层有4层, 分别是3号煤、8号煤、12号煤和15号煤, 其中以15号煤发育最好, 平均厚度达6.8 m, 其次为3号煤, 厚度1.3~2.2 m, 局部有不可采;第三为8号煤, 煤层较稳定, 厚度1.15~3.6 m;第四为12号煤, 煤层较稳定, 厚度1.35~1.84 m。

勘探主要层为15号煤层, 一方面它是矿区煤层中发育较稳定、厚度大、煤层结构简单的煤层。另一方面由于煤层与围岩物性差异极大, 煤岩之间能构成较好的波阻抗界面, 故可形成能量较强、连续性较好的反射波。根据人工地震合成记录和波组特征两种方法综合对比, 测区中3、8、12、15号煤反射波均有不同程度的发育, 其中以3号煤和15号煤反射波发育较稳定、能量较强、连续性好;8号煤、12号煤射波能量偏弱或较弱, 连续性较差, 工区内标准反射波时间剖面图如图5所示。

2.2.2 反演实例

以2-28井为例, 由于常规地震剖面分辨率较低, 所以在其基础上应用数字化的测井数据进行基于模型的波阻抗反演, 得到反演剖面, 如图6所示。

3 结语

通过对测区的测井曲线进行处理, 证明了设计的软件实用性较强, 能够实现测井曲线的数字化。将数字化后的数据应用于地震反演, 得到的反演剖面也具有较高的分辨率, 进一步证明软件的可用性。但是软件在测井曲线转换的方便性及归一化要求上有待提高, 也没涉及几种类型测井曲线的相互转化。

参考文献

[1]雍世和, 张超谟.测井数据处理与综合解释[M].石油大学出版社, 1996

[2]孙鑫, 余安萍.VC++6.0深入详解[M].北京:电子工业出版社, 2006.

[3]朱成宏.地震资料波阻抗多尺度反演[J].石油物探, 1999, 38 (2) :20-30.

数字化曲线 篇4

关键词:数字传感技术,酸碱中和滴定,曲线

一、问题的提出背景

中学化学新课程标准中,明确提出“要在配有图形计算器或掌上电脑(掌上实验室)和信息传感器的学校, 推广在化学实验中使用图形计算器或掌上电脑(掌上实验室)和信息传感器,并应用于课堂教学中,特别是应用于研究性学习中”。数字传感技术作为一种应用较为先进、实用性强、便于操作、集数据采集与分析于一体的实验系统,若能广泛应用于研究性实验,既体现新课改下教育思想与理念的转变,又符合学生学习的认知规律。 苏教版《化学反应原理》中的绘制酸碱中和滴定曲线,恰好可以利用这一技术,将滴定过程中pH的变化情况借助计算机以图像的形式显示出来,即直接绘制滴定曲线,体会pH“突变”范围,同时还可以进一步探索强弱电解质滴定中和曲线的不同。

二、实验仪器和试剂

课堂设计:6个小组,分组实验。

实验器材:pH传感器、数据采集器、计算机、磁力搅拌器、滴定管等。

试剂:蒸馏水、0.1000mol/L盐酸、0.1000mol/L氢氧化钠溶液、0.1000mol/L醋酸、0.1000mol/L碳酸钠溶液。

三、课堂实录片断及反思

片断一:传统绘制酸碱中和滴定曲线

师:同学们,上节课我们学习了酸碱中和滴定的方法和实验,今天我们一起来学习酸碱中和滴定的曲线绘制方法。请每个小组选取课本P75中的两个体积进行计算。

PPT:0.1000mol/L盐酸滴定0.1000mol/L氢氧化钠溶液20.00mL时的数据如下表所示。

小组展示:滴入5.00、10.00、19.95、20.05、22.00、 30.00毫升盐酸时,pH的计算过程。

师:通过计算,各小组有什么发现?

小组发言:在恰好中和的点,少加一滴和多加一滴pH相差很大,而之前和之后的变化比较小。

师:很好,根据以上10个点,请大家在坐标纸上绘制盐酸滴定氢氧化钠的pH变化曲线。

小组展示:评选曲线平滑,作图准确的小组。

PPT展示:

小组总结:通过曲线可知,在酸碱滴定时,选择的指示剂变色范围在突变范围内,就不会造成太大的误差。

【反思】学生通过绘制曲线,熟悉pH的计算方法和技巧,体会“突跃”的过程,同时也发现数据点较少,曲线不平滑的缺点,从而提出实验测定的思路。

片断二:传感技术绘制酸碱中和滴定曲线

师:现在我们将利用pH传感器实时监测盐酸滴定氢氧化钠和醋酸滴定氢氧化钠溶液过程中pH的变化情况,并借助计算机绘制pH曲线,平行两组做对比实验,并找出两种曲线的不同,说明理由。

小组实验:两个小组按照图1所示组装实验装置,烧杯里加入20mL 0.1000mol/L氢氧化钠溶液,上面的注射滴管中分别加入0.1000mol/L盐酸、0.1000mol/L醋酸,进行对比实验。

小组展示1:

小组总结:

1.醋酸滴定时的曲线突跃范围小。

2.盐酸滴定氢氧化钠滴定终点pH等于7,而醋酸滴定氢氧化钠滴定终点pH约为9。

3.由曲线的变化也可判断醋酸是弱酸,醋酸钠水解呈碱性。

师:各小组实验观察和总结都做得很好,下面我们利用pH传感器借助计算机绘制氢氧化钠分别滴定盐酸和醋酸的曲线,小组观察并讨论曲线中提供的信息。

小组实验:两个平行小组按照图1所示组装实验装置,上面的注射滴管中加入0.1000mol/L氢氧化钠溶液,烧杯里分别加入20mL 0.1000mol/L盐酸、0.1000 mol/L醋酸进行对比实验。

小组展示2:

小组总结:

1.两组曲线显示仍然是氢氧化钠滴定醋酸的曲线突跃范围小。

2.氢氧化钠滴定盐酸终点pH约为7,而氢氧化钠滴定醋酸终点pH约为9。

3.由曲线的变化也可判断醋酸是弱酸,醋酸钠水解呈碱性。

师:指示剂选择上有不同吗?

小组反馈:强酸强碱间的滴定,可以用甲基橙和酚酞,但是弱酸强碱间的滴定应该选择酚酞(变色范围为8 ~10)。

【反思】1.通过计算机绘制曲线认识到滴定过程中的“突变”是客观存在的;2.通过曲线观察,发现滴定终点与计量点并不完全一致,但是引起的实验误差并不大,可以保证酸碱中和滴定分析的科学性和准确性;3. 通过对比实验和观察曲线,发现强、弱电解质在滴定时间、起始点、突跃范围、滴定终点的pH、指示剂的选择等的不同,进一步体会弱电解质的电离平衡和盐类水解的原理。

片断三:传感技术探究盐酸滴定碳酸钠溶液滴定曲线

师:1.选择哪种试剂来测定未知碳酸钠溶液的浓度?

2.预测利用传感技术绘制的曲线可能有什么不同?

小组讨论、发言:用盐酸滴定碳酸钠溶液测定浓度, 曲线的突跃有可能有两个:

小组实验:按照图1所示组装实验装置,上面的注射滴管中加入0.1000mol/L盐酸,烧杯里加入0.1000 mol/L碳酸钠溶液进行实验。

小组展示:

师:各小组找到滴定突跃范围并解释。

小组总结:

1.盐酸滴定碳酸钠先反应生成碳酸氢钠,所以滴定终点pH约为8。

2.继续滴定到终点为氯化钠,但是由于产生的二氧化碳溶解在溶液中至饱和,使终点pH为酸性。

3.两次突变所用盐酸体积大约为1∶1。

师:那么我们选择什么样的酸碱指示剂呢?

小组讨论:

反馈1:第一计量点:Na2CO3+HCl=NaHCO3,此时由于碳酸氢钠水解呈现碱性,因此应该用酚酞作为指示剂。

反馈2:第二计量点:Na2CO3+2HCl=2NaCl+CO2+H2O,此时由于二氧化碳的饱和溶液呈现酸性,应该用甲基橙作为指示剂。

反馈3:从图中曲线观察到第二突跃范围比较明显, 最好用甲基橙作为指示剂至反应结束。

【反思】1.认识酸碱滴定分析法的实用性和科学性; 2.通过观察曲线,理解盐酸滴定碳酸钠溶液中反应分步进行的特点;3.继续发挥小组合作的精神,挖掘曲线中的信息点。

四、运用数字传感技术的体会

数字化曲线 篇5

随着计算机网络的发展和普及,信息安全问题越来越多地被人们所关注,对数据进行加密是一种常用且行之有效的保护信息安全的方法。其中,被公认为最有效的是采用椭圆曲线加密的密码算法。相对于其它公钥密码系统(如RSA和El Gamal),ECC可以提供相同的功能;而且在相同的安全强度下,ECC所需要的各项参数(比如基础代数系统的大小、密钥的长度等)都要小得多,在实现上更简单、更快速和更具有普遍性;另一方面,椭圆曲线具有其一般的代数定义(亏格为1的代数曲线),远比RSA灵活多变,无论是在密码系统与协议的研究及实现还是在分析与攻击的手段及方法上都有很多新的发展空间。在椭圆曲线密码体制中,点加与点的标量乘算法性能的优劣是椭圆曲线密码能否实用化的关键,如在ECDSA签名[1]产生过程,计算量最多的计算是标量乘法k G,在签名验证过程计算量最多的计算是u1G+u2Q。因此,如何设计出快速算法,降低点乘是关键。标量乘法运算k P的速度及安全性直接影响到椭圆曲线密码体制的有效实现。

近几年Koblitz曲线上的标量乘法研究很深入,这类快速算法的高效源于该曲线上的Frobenius映射的高效。自从Koblitz将Frobenius映射引入标量乘法研究领域[2]后,Solinas提出了一种新的带符号二进制表示———联合稀疏形式(JSF),并基于JSF给出了椭圆曲线上2-标量乘的新算法[3];国内白国强等人给出了一类安全椭圆曲线及其快速计算的方法[4,5,6];胡磊等人给出特征为3的Koblitz曲线的快速点乘[7];也有学者将Frobenius映射与双基数系统结合[8,9]等等。

本文从Koblitz曲线和Frobenius映射理论基础出发,给出结合联合稀疏形JSF和Frobenius映射的Lee标量乘改进算法,并将其运用到改进的ECDSA签名验证算法中,有效地提高了验证签名算法速度,并且加强算法抵抗基于参数组的攻击能力。

1 联合稀疏形JSF

在椭圆曲线点的运算中,点的减法和加法的计算效率一样。如果在k的表达式中有±1,在倍点运算中可能减少点的加法运算。正整数k和l的联合稀疏形(JSF)[10]代表矩阵的核心思想是通过运算使k和l的带符号二进制展开式中0列的数量达到最多且都是以列为单位进行计算的,在行方向上是否稀疏没有实际意义,由以下特征所表征:

(1)任何连续的3列中至少有1列为零。也就是说对任一位置的和,当k=0时有ui,j+k=u1-i,j+k或者当k=0或±1时有ui,j+k=u1-i,j+k=0。

(2)相邻近的项没有相反的符号。也就是说,不存在ui,j u1-i,j+k=-1的情况。

(3)若ui,j+k≠0,则u1-i,j+k=±1且u1-i,j=0。

(4)对于j满足ui,j+k=u1-i,j+k=0的概率约为1/2。

算法1是对于正整数a和b寻找其联合稀疏形。算法1中c=amodb是指c≡amodb且-b/2≤c≤b/2。

算法1联合稀疏形JSF

2 Lee算法

2.1 Frobenius映射[11]

Koblitz曲线是Koblitz提出的一种基于有限域Fq(q=2m)上的特殊椭圆曲线。一般都同构于以下方程:Ea:y2+xy=x3+ax2+1,a∈{0,1}存在两个非同态的Koblitz曲线:E0和E1,且#E0(F2)=4及#E1(F2)=2,那么#E0(F2m)=4n及#E1(F2m)=2n'(n,n'∈Z)。n和n'是素数当且仅当m是素数,否则存在Ea(F2m)的子域Ea(F2d),其中d|m。

定义1令E是Fq上的椭圆曲线,则由φ:φ∞α∞,:(x,y)α(xq,yq)所定义的q次幂映射:EαE是Fq上的椭圆曲线E的Frobenius自同态。椭圆曲线E在Fq上的阶用#E(Fq)表示。#E(Fq)=q+1-t,其中t为φ的迹。φ的特征多项式是φ2-tφ+q=0。

令E是Fq上的一条非超奇椭圆曲线。当m≥2时,我们表示Fqm为Em,则Em上正整数乘子K可以表示为对任一正整数K>0,其扩展的此表达式是唯一的且其长t≤m+3。

2.2 Lee算法[12]

设P是椭圆曲线上的一点,k为一整数标量,Q=k P=P+P+…+P(k个P相加)为椭圆曲线上的标量乘。实现椭圆曲线标量乘的算法有简单二进制标量乘、非相邻型(NAF)标量乘、滑动窗口NAF标量乘、固定基comb算法等等。由于用Muller方法计算j P(其中1≤j≤q/2)时,其标量乘可以表示为kP=

在有限域GF(2m)上,由Muller方法扩展,得Lee标量乘算法步骤如下:

(1)计算

(2)将系数ci表示成二进制串(ci,n-1,ci,n-2,…,ci,1,ci,0);

(3)计算

为了简化最后一步计算,定义P,则最后一步计算为:算法描述如下:

算法2 Lee标量乘算法

输入:正整数k,点P

输出:点乘k P

3 算法改进

3.1 改进的Lee算法

采用联合稀疏形JSF后可在算法2中将系数ci改写成二进制串后,进一步建成联合稀疏形系数矩阵c,使得其全“0”列的数目尽可能多,以减少第三步的运算量。如果m mod 2=1,则令cm=0。令s=(m-1)/2,对每一系数对(c2x,c2x+1)(x=0,1,…,s)建立联合稀疏形,并将所有的组合成m×n阶系数矩阵c:

(1)计算

(2)如果m mod 2=1,则令cm=0。计算s=(m-1)/2;

(3)对每一系数对(c2x,c2x+1)(x=0,1,…,s)建立联合稀疏形;

(5)计算:

其中

在算法中需要预计算和存储下列三项:

(2)(c2x,c2x+1)(x=0,1,…,s)的联合稀疏形;

(3)当(a1,a0)∈{0,±1}2时Sa=a1(P)+a0P(只需存储(P)±P)。

算法3改进的Lee算法

输入:正整数k,点P

输出:点乘k P

算法效率设A表示点加开销,D表示倍点开销,Φ表示Frobenius映射φ开销,则上述算法的运算时间近似为:

算法3中由于使用高效的Frobenius映射,无需进行倍点运算,同时与JSF结合,极大地减少了所需的点加量,提高了计算标量乘的效率。表1为算法比较。

3.2 ECDSA算法

在传统的ECDSA签名验证[1]运算中,在计算(x1,y1)=u1G+u2Q需分别计算u1G和u2Q,然后在计算u1G+u2Q的点加运算,最后再进行验证运算;验证签名所用的时间是常用签名所用时间的两倍。在改进型ECDSA签名验证算法中尽量避免(x1,y1)=u1G+u2Q运算,将其简化为一个点乘和一个点加运算,同时去掉签名验证中的模逆运算。

在改进型ECDSA实施过程中,同样首先给出椭圆曲线域参数,以精确定义一条椭圆曲线和一个基点,进而确定曲线上的各点运算。在本文中定义选定Koblitz椭圆曲线为:Fq:y2+xy=x3+ax2+b,域参数D为:D=(FR,a,b,P),其中,FR表示二进制域Fq,a,b∈Fq,P表示一个基点,#E(Fq)为椭圆曲线的阶。引入hcert,它是签名者的证书数据的杂凑值,证书数据包含签名者的身份标识、参数组和公钥;在杂凑前先将hcert加入消息m能抵抗基于参数组操作的攻击。签名者的私钥是整数d∈R[1,n],公钥是Q=d P。用户A对消息m签名发送给用户B的过程如下:

(1)A产生签名

1)在区间[1,n-1]上生成一个随机数k;

2)在Koblitz曲线上采用算法3计算k G=(x1,y1),然后再计算r=x1mod n;

3)计算e=H(hcert,m);

4)计算s=(er)-1(k+d)mod n,若s=0,则跳至步骤1);

5)A对消息m的签字是(r,s),A将(m‖r‖s‖hcert)传给B。

(2)B验证签名

为验证(r,s)是A对消息m的签字,B执行:

1)验证r,s是[1,n-1]上的整数,否则丢弃该签名;

2)计算e=H(hcert,m);

3)计算w=(er)s mod n;

4)在Koblitz曲线上采用算法3计算w×G的点乘运算;然后减去Q得k G=(x1,y1);

5)计算v=x1mod n;

6)当且仅当v=r时接受签名。

4 改进型ECDSA算法分析

选取Intel P4 3.0GHz,512MB内存,选NIST推荐的二进制域上的Koblitz椭圆曲线进行实验,即在相同安全条件下去分析比较本文数字签名方案及ECDSA对一文档签名和验证的执行时间,实验结果如表2所示。

可以看到,改进的签名验证算法和传统ECDSA算法相比,签名的效率提高了约10%以上,签名验证算法的验证步骤所花费的时间却明显减少,效率提高了约40%。算法改进的重点放在如何避免直接计算,由于它的存在使得验证签名算法的时间远比产生签名算法的时间长。

考虑到签名方程的形式为:z=xk+yd,ECDSA签名方案就是(x,y,z)取(s,r,e)所得到的。签名方程有6种基本形式,取s=ek+rd进行推导。用e-1和r-1代替e和r,则s=(er)-1(kr+ed)。由于e和r对信息签名的发方和收方都是已知的,且方程中存在(er)-1项,就可以用k和d取代kr和ed,方程变为s=(er)-1(k+d)。由于计算任何二元域元素的Frobenius映射是很快的,采用在Koblitz椭圆曲线上JSF与Frobenius映射相结合的快速点乘算法以预计算和占用少量存储空间为代价来加速计算标量乘k G和w G,在验证过程中用w G减去Q,与传统算法中(x1,y1)=u1G+u2Q相比,减少了一次标量乘;同时减少了验证签名中的模乘运算,节约了验证签名的时间。

在签名方案中由四个算法构成,包括参数组生成算法、密钥生成算法、签名生成算法和签名验证算法,其中后三个算法均用到参数组生成算法生成的一组参数组D。在改进算法中借鉴了EC-KCDSA算法,不增加开销的情况下引入签名者的证书数据杂值hcert,证书数据包含签名者的身份标识、参数组和公钥。由于每一个签名者的身份标识唯一且使用自己的证书数据杂凑值hcert,在签名验证过程中与消息m相结合产生特定的哈希代码,可以有效地防止参数组生成传输过程中的非法参数操作,提高了抵抗基于参数组操作的攻击的能力。改进后的算法由于需要预计算,故适合在计算能量有限、有一定存储容量的环境中使用。

参考文献

[1]Darrel Hankerson,等.椭圆曲线密码学导论[M].张焕国,等译.电子工业出版社,2005.

[2]Koblitz N.An elliptic curve implement of the finite field digital signa-ture algorithm[C]//Advance in Cryptology-CRYPTO 1998.Berlin:Springer,1998:327-337.

[3]Solinas J A.Efficient arithmetic on Koblitz curves[J].Designs,codesand Cryptography,2000,19(2-3):195-249.

[4]白国强,周涛,陈弘毅.一类安全椭圆曲线的选取及其标量乘法的快速运算[J].电子学报,2002,30(11):1654-1657.

[5]卢忱,周秦武,等.椭圆曲线密码体制基点选取算法设计与实现[J].西安交通大学学报,2000,34(6):27-29.

[6]卢忱,周秦武,戴启军,等.椭圆曲线密码引擎算法设计与实现[J].西安交通大学学报,2000,34(8):41-45.

[7]胡磊,冯登国,文铁华.一类Koblitz椭圆曲线的快速点乘[J].软件学报,2003,14(11):1907-1910.

[8]Avanzi R,Sica F.Scalar multiplication on Koblitz curves using doublebases[OL].[2007-03-15].http://iacr.org/2006/067.ps.gz.

[9]Wong K W,Lee E C W,Cheng L M,et al.Fast elliptic scalar multipli-cation using new dou-ble-base chain and point halving,Applied Math-emati-c s and Computation 183,2006,2:1000-1007.

[10]Solinas J A.Low-Weight Binary Represen-t ations for Pairs of Integers.Technical Report CORR41(2001).

[11]Hasan M A.Power analysis attacks and alg-orithmic approaches to theircountermeasures for k-oblitz curve cryptosystems.IEEE Trans.on Com-pu-ters,2001,50(10):1071-1083.

数字化曲线 篇6

随着Internet/Intranet的出现及通信技术的迅速发展, 计算机网络已经渗透到社会生活的各个领域, 网上信息的安全和保密日益成为信息化社会发展的重中之重, 为了确保信息的完整性, 其安全技术——数字签名成为人们关心的课题。数字签名是日常生活中手写签字的模拟, 能够实现用户对消息的认证, 在电子商务及办公信息化的建设中, 起着不可替代的作用。而当数字签名用于政府机关、企业界各公司 (工厂) 的内部业务时, 往往需要多个用户对同一消息进行认证, 这就要用到多重数字签名方案。

多重数字签名即多个用户对同一消息进行签名。根据签名过程的不同, 分为有序多重数字签名和广播多重数字签名。在有序多重数字签名方案中消息的发送者规定消息签名的顺序, 签名者按顺序对消息进行签名;在广播多重数字签名方案中, 消息发送者同时将消息发送给每一位签名者进行签名, 然后签名者将签名消息发送到签名收集者, 由收集者对签名消息进行验证和整理。

有序多重数字签名又分为顺序相关的和顺序不相关的有序多重数字签名。顺序相关的有序多重数字签名是指签名者存在前驱后继关系, 不能按任意次序签名。相反, 顺序不相关的有序多重数字签名是指签名顺序可以任意。现实生活中大量的签名都是顺序相关的。所有本文重点讨论和研究顺序相关的有序多重数字签名方案。

1 有序多重数字签名方案的分析比较

1994年, Harn首次设计了一种基于离散对数难题的多重数字签名方案, 该方案只适用于广播多重数字签名方案, 而不能用于有序多重数字签名。这些年来, 许多多重数字签名方案已相继提出。文献[4]基于目前最为流行的椭圆曲线密码体制, 提出了一种有序多重数字签名方案。该方案不仅使多重数字签名建立在椭圆曲线离散对数难题上;加入了时间限制防止签名重播;签名者也可通过验证操作发现伪签名, 同时签名中心可以及时通过签名接收者提供的失败信息查找原因并进行及时处理, 而且充分利用了椭圆曲线密码体制的各种优点, 缩短了密钥长度、提高了执行速度、减少了占用存储空间、提高了签名效率并且占用的带宽减小等。文献[5]在文献[4]的基础上, 进行了研究和改进。虽然多重数字签名也是建立在椭圆曲线离散对数难题上, 但是在文献[5]的方案中, 消息以密文形式传送, 这样就克服了消息采用明文传送带来的安全隐患;同时还简化了签名者的验证结构, 减少了通信成本, 在密钥生成部分, 签名中心可以验证用户公钥yi的正确性, 这样可以抵抗成员内部的欺诈行为, 因而具有更高的安全性和使用价值。

综上所述, 文献[4]与文献[5]所提出的多重数字签名方案在安全性和实用性方面能够满足人们的实际需求, 与其他传统的多重数字签名方案相比, 具有很多无可比拟的优势。但是这两个方案依然存在着一般多重数字签名方案中的缺陷:比如对签名中心的依赖性比较高, 如果签名中心任务量较大, 那么签名的效率可能会在一定的程度上受到影响。本文在采纳了这两种多重数字签名方案优点的基础上, 对文献[3]提出的一种基于身份的签密方案进行了改进, 提出了一种新型的基于身份的有序多重数字签名方案。该方案不仅能够避免基于传统PKI认证框架的诸多弊端、简化了密钥管理过程, 而且该方案同时具备有序和带签名者意向的双重特性。

2 新型的有序多重数字签名方案

2.1 该方案中的关键概念和数学难题

双线性映射是基于身份的密码体制中非常重要的概念, 双线性映射可以利用椭圆曲线中的Weil对或Tate对构造得到。

设G1是一个阶为q, 生成元为P的加法循环群, G2是一个阶为q的乘法循环群, 其中q是一个大素数, 映射e:G1×G1→G1称为双线性映射, 需要满足以下三个条件:

(1) 双线性:e (P1+P2, Q) =e (P1, Q) .e (P2, Q)

e (P, Q1+Q2) =e (P, Q1) .e (P, Q2)

e (a P, b Q) =e (P, Q) ab

(2) 非退化性:如果P是G1的生成元, 那么e (P, P) 是G2的生成元, 即e (P, P) ≠1。

(3) 可计算性:e (P, Q) 可有效地计算。

同时该方案利用以下一些难解的数学问题:

(1) ECDLP问题:设P和Q是G1中的两个元素, 找到一个整数n, 满足Q=n P。

(2) CDH问题:设a, b∈Zq*, 给定P, a P, b P, 计算ab P。

(3) BDH问题:设a, b, c∈Zq*, 给定P, a P, b P, c P, 计算e (P, P) abc。

2.2 新型有序多重数字签名方案的实现

2.2.1 系统参数的建立和用户密钥的生成

令p, q为两个大素数, 且q是p-1的因子。G1, G2为两个阶为q的群, G1是椭圆曲线E/Fp上加法群的一个子群, G2是有限域上乘法群的一个子群。假设存在双线性映射e:G1×G1→G2。

设ID字符串表示用户身份, H1, H2, H3是公开的密码学Hash函数, 定义为H1:{0, 1}*→G1, H2:G1→Zq, H3:F_2→Zq.s1, s2∈Zq是可信任授权机构PKG为签密方A和接收方B生成的随机值, 也是惟一由PKG知道的保密值。是系统参数的公开值。

是签名者的公钥, 对应的私钥由PKG产生, 其值为是签名接收者的公钥, 对应的私钥为, 同样由s的拥有者PKG生成。

2.2.2 签名算法

依据文献[3]中的签密算法, 主要的改进:签名者A除了对文档m签名外还要对自己的签名意向Y进行签名, m与Y在签名时不可分离。假设签名的顺序为 (A1, A1, …, An) , 需签名的文档为m, 每个签名者的意向信息依次为Y1, Y2, …, Yn.

第一步:A1选择随机数k1∈Zq, 计算签名:

第二步:签名者A1将 (R1, S1, sm, ym) 传送给A2。

每一位签名者Ai+1收到Ai的签名 (R1, S1, sm, ym) (2

Ai+1先使用私钥恢复消息, , 然后使用恢复Ai的签名意向信息, 最后验证Ai的签名, 计算是否成立, 若成立, Ai+1根据Ai的签名意向Yi判断是否继续签名, 若能够继续签名, 则执行如下过程:

然后Ai+1将 (Ri+1, Si+1, sm, ym) 传给Ai+2。按此过程依次类推, 直到传给第n个签名者为止。最后得到的签名为 (Rn, Sn, sm, ym)

3 方案分析

该方案除体现了现有多重数字签名方案的优点外, 还具有以下特点:

(1) 该方案基于椭圆曲线群上离散对数问题ECDLP的困难性, 要解ECDLP问题, 首先要解有限域中DLP的问题, 而且ECDLP要比DLP困难的多。因此该方案比一般的多重数字签名方案具有更高的安全性。

(2) 该方案采用的是基于CDH问题困难性的椭圆曲线上双线性映射算法。即使在G1中解DDH问题是很容易的, 但仍存在双线性映射e:G1×G1→G2, 使CDH问题在G1中为困难问题, 而且Joux和Nguyen曾给出这样映射e的例子。所以如果有攻击者要伪造对m的签名, 就必须解CDH问题;而且即使系统中的两个成员串通, 由他们的私钥a QID, b QID也得不到伪造密钥c QID=abQID。

(3) 该方案具备有序和带签名者意向的双重特性, 扩展了有序多重数字签名的范围, 具有很大的现实意义。

参考文献

[1]Wu Zongchen, Chou Shulin.Two-based multi-signature protocols for sequential and broadcasting[J].Computer Communications.1996.

[2]Ham L.Group-oriented (t, n) threshold digital signature scheme and digital multi-signature[J].IEEE Proceedings on Computers and Digital Techniques.1994.

[3]耿丽, 王尚平等.一种新的基于身份的签密方案[J].Computer Engineering.2004.

[4]卢鹏菲, 詹雄泉等.基于椭圆曲线的有序多重数字签名方案[J].Journal of Xiamen University (Natural Science) .2005.

[5]施荣华, 胡芳.一种基于椭圆曲线的有序多重数字签名方案[J].计算机工程与应用.2006.

数字化曲线 篇7

网络全球化已经加快了人们的电子信息交流,电子商务、电子政务、电子银行等都是网络全球化的重要应用领域。如何保证网络通信的安全已成为人们密切关注的问题之一,其中建立在RSA和ELGamal上的许多数字签名机制,其安全性依赖于因数分解和离散对数问题。然而,RSA的加解密钥要求比较大,ELGamal的签名认证花的时间太长,使得它们不适合某些系统的应用。现在,椭圆曲线密码体制的研究已经成为密码学的热点之一,由于在相同的条件下,椭圆曲线(EC)比其它公钥密码体制具有更强的安全性和效率,使得它在信息安全和密码系统的应用越来越引起了人们的重视。在某些应用领域ECC可以代替RSA、DSS和其它密码系统的使用[1,2]。一般来说,160位的ECC与1024位的RSA的安全性相当,这意味着ECC只需要更窄的带宽和更小的存储空间,这是网络应用的关键。

本文利用ECC短密钥和(t,n)门限方法建立一种多人同时签名的机制[3],这个方案的显著特点是群签名的成员个数t不能小于门限n的值,消息的接收者都能够验证签名。

1 有效群签名方案

群体密码学[4]由Desmedt于1987年提出,是面向社团或群体的密码体制。在群体密码中,群体外的人可以使用群体的唯一群公钥,向群体发送加密信息,而只有群体中的某些子集成员合作才能解密这些信息。同样,群体密码学中也有群体签名问题,群体外的用户只需知道群体的唯一公开密钥就可以验证该签名。门限数字签名是群体密码学的一个重要分支,特别适用电子政务的某些安全要求。其方法是将一个群体的签名密钥颁发给群体中的每个成员,使得任何成员个数大于或等于门限值的子集可以产生签名,而任何成员个数小于门限值的子集都无法产生签名。

群数字签名方案的安全性是建立在椭圆曲线离散对数的难解性上。当有n个成员的群想公开发布一个消息时,t(1≤t≤n)或者t个以上的成员能够代表群的签名,t个以下的成员不能代表群的签名。签名过程分为三个阶段:密钥产生、门限数字签名、门限数字签名的验证。验证中心CA(Center Authority)负责生成系统参数,验证每个成员的签名并公开群签名。

1.1 密钥产生[5]

CA产生和公开系统参数、群公钥,每个成员公钥和门限函数的其它部分。系统参数生成如下:

(1)CA产生和公开的参数

ECC:y2=x3+ax+b mod p,a、b∈Zp,4a3+27b2≠0 mod p,p是大素数,GF(p)={0,1,…,p-1},椭圆曲线的阶N也是一个大素数,且p+1-2≤#E(GF(p))≤p+1+2,单向哈希函数h(·),椭圆曲线的基点G,其阶为n,群成员Ui的公开身份Xi。

(2)CA产生和保留的参数

(t,n)门限函数f(x)=at-1xt-1+…+a1x+a0mod n,其中{i=0,…,t-1},ai∈[1,n-1],群密钥f(0)=a0,群成员Ui的密钥为f(xi)。

(3)CA计算并公开群公钥N

(4)CA计算并公开每个成员公钥Ni

1.2 门限数字签名产生[6]

假设群需要对消息m进行签名,群成员U1,U2,…,Ut能代表群签名。这一阶段需要产生每个人的数字签名、验证每个人的数字签名以及产生(t,n)门限签名。步骤如下:

(1)每个成员Ui使用密钥f(xi)和随机整数ki(ki∈[1,n-1]),计算对消息m的签名(ri,si)。Ri=kiG,公开Ri,

其中h(m)为消息m的单向哈希函数,有利于提高系统的安全性,成员Ui把自己的数字签名(ri,si)发送给CA中心。

(2)CA中心收到每个成员Ui的数字签名(ri,si)后,CA利用以下方程验证签名:检查di=ri是否满足,如果满足,则(ri,si)是成员Ui对m的有效签名;否则,成员Ui的签名无效。

(3)收到所有成员的签名(ri,si)后,CA计算并公开对消息m的群签名(r,s)。CA首先获得所有成员的公钥Ri=(XRi,YRi),然后计算R。

1.3 群数字签名的验证

任意一个接收到(r,s)的接收者能够验证对消息m的群签名:

(1)接收者首先计算判断S=s是否成立,如果成立则执行(2),否则群签名无效。

(2)计算Q=(xQ,yQ)=s G+h(m)N,q=xQmod n,如果q=r,则(r,s)是群对消息m的签名,否则签名无效。

证明2:由方程

2 安全性和可行性分析

我们从不同的角度来分析方案的安全性和可行性。从可能潜在的攻击来分析它的安全性,这也是通过对这个系统的缺陷研究来证明系统的安全性。通过目前的签名机制和提出的方案来比较分析系统的可行性,包括密钥长度、签名长度、签名时间等方面来证明方案的优越性。

2.1 安全性分析

使用(t,n)门限签名方案,要有t或t个以上的成员才能建立有效的群签名并获得群密钥,使攻击不可行。如果攻击者企图从群公钥N=-f(0)G获得群密钥f(0),攻击者首先必须解决椭圆曲线离散对数问题(ECDLP),这比离散对数问题还困难,因此攻击不可行。

如果攻击者想通过改变成员签名进行攻击,由方程要从Di获得Di'伪造有效的签名si',他仍然要解决ECDLP问题。

如果攻击者获得了Q、s、G、h(m)、N,想通过(t,n)门限群签名验证方程伪造有效签名:Q=(xQ,yQ)mod n=s G+h(m)N,则攻击者还是必须解决ECDLP问题,并且对消息m使用了单向哈希函数,这样不仅提高了消息m的安全性,而且也避免了消息m受到的攻击。

2.2 可行性分析

在签名和验证过程中,所进行的计算用加法代替了乘法和指数运算,运算速度比传统的ELGamal签名方案和DSA系统要快。在个人签名和群签名使用相同的协议,减少了系统设计代价。

在方案中,群成员可以同时进行签名,另外(t,n)门限方案在任何时候验证签名人的身份提供了灵活性。然而许多目前建立在RSA、ELGamal上的签名机制的安全性不如建立在椭圆曲线离散对数问题的(t,n)门限签名方案。这个方案只使用160bits与RSA使用1024bits的安全性相同,相同的安全级别只需更短的密钥,可以减少内存空间;另外也加快了消息的传输。参数n只要160bits可以与RSA的1024bits的安全性相同,因此消息只要320bits。

可见,上述签名协议产生的签名(r,s)同基于ECC的ElGamal数字签名方案生成的签名形式完全相同,签名(r,s)的验证也同基于ECC的El Gamal签名验证的方法相同,因此本方案是有效的。

3 结束语

建立在椭圆曲线上的公钥系统不仅使用的钥匙短,而且它的安全性更高。优越的可行性和较窄的带宽是未来公钥系统的主流。不管在内网还是在外网的商业事务中都能利用这种有效的门限群签名系统发送签名的消息。而且,系统还能够在没有改变和伪造的情况下进行群成员签名的验证。

在未来的应用中,建立在椭圆曲线上的(t,n)门限数字签名能够有效地改善签名机制,这样不仅缩短了签名密钥,也缩短了产生和验证消息的时间。在安全的网络环境下,对电子政务和电子商务的未来发展也有很重要的意义。

摘要:本文结合椭圆曲线密钥短和(t,n)门限方案的特点,研究了一种基于椭圆曲线的多人同时签名并可验证的门限群数字签名算法,并分析了这个算法的安全性、可行性。

关键词:门限,群数字签名,椭圆曲线密码系统

参考文献

[1]M.Robshaw,Y.Yin,Elliptic curve cryptosystems,An RSA Laboratories Technical Note,1997,Revised June27.

[2]G.J.Lay,H.G.Zimmer,Constructing elliptic curves with given group order over large finite fields,in:Algorithmic Number Theory Proceedings LCNS877,Springer-Verlag,Berlin,1994:.250-263.

[3]C.Blundo,A.De Santis,D.Stinson,Graph decompositions and secret sharing schemes,in:Proceeding of EUROCRYPT_92,Springer-Verlag,Berlin,1992:1-20.

[4]Desmedt Y,Frandkel Y.Shared generation of authentica-tors and signatures[A].In:Advances in Cryptology-CRYPTO'91[C].1991:457-469.

[5]Tzer-Shyong Chen,Jen-Yan Huang,Tzer-long Chen.An efficient undeniable group-oriented signature scheme.Applied Mathematics and Computation165,2005:95-102.

数字化曲线 篇8

1 数字签名在注册码生成[1]

软件开发商选定一个公钥签名算法实现注册码生成。私钥用来为ID产生数字签名,此签名作为软件的注册码。公钥存在于软件程序中,程序中的校验模块得到计算机的ID后,利用公钥验证数字签名(注册码)的正确性。使用基于公开密码体制的数字签名算法来计算和校验注册码,在软件程序中包含了公钥和签名的验证过程,而注册码计算所需要的私钥则是秘密的。破解者虽然能推导出注册码的计算方法,但他不能得到计算过程中所需要的私钥,因此不能计算出注册码。使用暴力穷举法或其他攻击方法,在密钥的位数足够长时,也不能在可计算的时间范围内根据已获得的公钥汁算出私钥。

如图1所示,注册码签名包括了密钥生成、主机ID生成、注册码生成、注册码校验四个主要模块。密钥生成模块和注册码计算模块由软件开发商掌握,主机ID生成模块和注册码验证模块在软件中运行。(1)密钥生成模块计算出具有一定长度的公钥私钥对公钥由注册码校验模块使用而私钥由注册码生成模块使用。(2)主机ID生成模块按照主机的硬件信息计算出一个固定长度的ID。软件用户将主机ID交给软件开发商。(3)注册码计算模块根据主机ID(磁盘序列号、网卡的物理地址等具有唯一性的硬件主机标识)计算出对应的注册码,注册码就是主机ID的数字签名,使用密钥生成模块提供的私钥进行签名。软件开发商将(ID,注册码)二元组交给用户。(4)在运行软件程序时,注册码验证模块首先确认ID的合法性。如果本机的ID与二元组中的ID不一致,说明该授权不是对这台计算机的,程序终止。ID正确时,再检验(ID,注册码)二元组是否匹配,即注册码是否正确。如果不匹配,说明注册码是伪造的,程序终止。

2 椭圆曲线签名算法

本文所提出的软件注册码方案是以椭圆曲线数字签名算法为基础的,ECDSA的实现首先要选定椭圆曲线域参数,然后定义椭圆曲线和基点,进而确定曲线上各点的运算[2,3,4]。这里选择有限域K上的椭圆曲线,其域参数T=(p,a,b,G,n,h),其中G为基点,n为G的阶,即有nG=O。h=#(Fp)/n,#(Fp)为该椭圆曲线的阶,p为大于3的素数,a,b∈K。私钥为随机整数d,其中d∈[1,n-1],相应的公钥为Q=dG。

我们参考文献[4]给出的一种数字签名方案,其中Hash表示一个密码杂凑函数,其输出长度不超过nbit(若该条件不满足,可将Hash的输出截断)。

签名过程:

Step1.选择一个整数k∈[1,n-1];

Step2.计算kG=(x1,y1);

Step3.计算r=x1modn,若r=0,返回Step1;

Step4.计算e=Hash(M);

Step5.计算s=k-1(e+rd)modn,如果S=0,返回Step1;

则(r,s)就是对消息M的签名。

验证过程:

验证是否在内若不在则签名无效;

Step2.计算e=Hash(M);

Step3.计算u1=es-1(modn),u2=rs-1(modn);

Step4.计算X=u1G+u2Q,如果X=O,表示签名无效;否则,X=(x1,y1),计算v=x1modn;

Step5.如果v=r,接受该签名,否则拒绝该签名。

正确性证明:

若消息M的签名(r,s)确实是由合法的签名者生成的,则s=k-1(e+rd)(modn)。

即有:k=s-1(e+rd)modn=(s-1e+s-1rd)modn=(u1+u2d)modn,

又X=u1G+u2Q=(u1+u2d)G=kG,r=x(kG)modn(其中,x(kG)表示点kG的横坐标,即x坐标),v=x(X)modn,即有v=r。

3 基于椭圆曲线数字签名算法的注册码生成方案

3.1 注册码的生成过程

根据数字签名算法,其生成过程描述如下:

(1)在有限域Fq上的一条安全的椭圆曲线E选取一个基点G=(XG,XG)∈E,在区间[1,n-1]选择一个随机数d,计算Q=dG,则Q为公钥,d为私钥。

(2)将用户计算机的唯一标示号设为ID。在区间上[1,n-1]选择一个随机整数k,计算

如果r或s为零,则重新计算,否则生成的签名信息为(r,s)即为产品的注册码。

3.2 验证过程

(1)将(ID,r,s)提供给用户。译码后,拆分为ID和签名信息(r,s)。与主机ID生成模块生成的ID相比较,不匹配时验证失败。否则:

(2)根据公钥计算

X=ulG+u2Q,如果X为无穷远点(O),则拒绝签名,否则X=(x1,y1),计算

v=xlmodn;如果v=r,则注册成功,否则为无效注册码。

对于用户信息ID的获取,应该采用能够代表用户机器的唯一并且相对固定不变的标志,在用户注册的时候由软件的主机ID生成模块提取,并发送给软件开发商。

4 结束语

采用基于ECDSA的注册码生成方案,具有两个方面的优点,一是将非法生成注册码的难度对应到椭圆曲线上的离散对数问题,而这是个理论难题,该算法抗攻击能力强,只要确保密钥不泄露,非法注册机的开发就变得不可行;二是对于软件开发商而言成本较低,算法成熟,并且运算量相对不大,在产品端附上认证算法代码,开发商只要一套密钥就可以对一套软件产品的所有用户生成注册码,便于软件用户管理和软件产品的管理

参考文献

[1]谭毓安,卢超,崔志刚.基于DSA算法的软件注册码保护.微型机与应用,2005;24(12):66—68

[2](加)汉克森.椭圆曲线密码学导论.张焕国,译.北京:电子工业出版社,2005

[3]卢开澄.计算机密码学—计算机网络中的数据保密与安全(第3版).北京:清华大学出版社,2003

[4]Anon.Standards for Efficient Cryptography Group,SEC1:Elliptic Curve Cryptography:Version1.5.http://www.secg.org/download/aid-401/sec1.pdf,2005

[5]郭伟斌,冯钿,罗文村.软件注册机制模块的研究.微计算机信息,2006;22(5—3):268—269

[6]方江涛,李伟,郝林.基于椭圆曲线密码体制的一种软件注册方案及实现.昆明冶金高等专科学校学报,2007;23(1):56—59

[7]陈珊,葛艳玲,石峰.一种实现软件注册码的非对称加密算法.电脑知识与技术,2007;5(10):190—193

[8]张怡婷,杨明.基于非对称密码体制的软件注册系统研究与实现.计算机应用,2005;25(2):399—402

[9]张林,赵勇,刘吉强,等.基于椭圆曲线数字签名算法的序列号软件保护方案.中国电工科学研究院学报,2006;1(1):54—57

[10]孔维广.基于ECC算法的软件注册码方案.武汉科技学院学报,2007;(20)12:50—52

上一篇:加快发展农牧业经济下一篇:装饰性表现