分析密码学难题
1、某等式不成立,如果放宽条件,就可满足。
常见的等式和不等式,可涉及极限、取值集合、集合划分、映射方法、区间表示(对比集合表示)、数据属性、数值属性、分段函数由相等到不相等的“上升跳变”、不等时差值的估计、不等时的差商、不等时微商(差值变化量的估计)。
2、增加或删除条件,可形成新的等式。
3、极限问题有多种表达方式、处理方式。例如,收缩,极限点,极限存在的条件、分段函数。
4、概率表达函数分布的某种客观事实。
5、影响等式的限制因子可能是概率变化的。
6、想象……数据聚类的情况。几类。划分聚类的方法。影响聚类划分的条件。
7、对于等式的多层限制条件,与此等式的单层限制条件之间的互推。
推理的假设的满足条件。
推理的困难程度的判定。
推理过程的路径,及路径的相关问题。因为,至少总希望推理能够不出错,推理的每一步都会影响存放变量的单元。
8、等式的每次推演过程,都会增加一些“说明”,或者其它具有较广泛意义的公理和定理在此处的有条件的应用和推广,都会涉及到集合之间的映射。
这里补充几句,
当钻研比较深时,第一要有专家的指导,第二要劳逸结合,第三,特别要注意休息和社会活动、体育锻炼。
而且,许多事情没有答案,也就是无条件实证、没有人辅助时,不要心急。
弄出来,就弄出来了,没弄出来,也不会掉肉。
“留得青山在,不怕没柴烧”。
“长江后浪推前浪,一代更比一代强”,有些研究问题,是现阶段缺乏环境去研究和探秘的。
有幸“空中交往”诸君,可是如此领会?
真实的TCP|IP协议处理机的实现,是纯软件方式的。
所谓协议处理机,都是一个复杂的、通过网络层接口界面和其它层通信的、独立的VM虚拟机。
TCP协议数据包,向下,发给IP协议处理机(是纯软件的)后,IP协议处理机进行 封包。向上,协议处理机VM 解包。
如果采用前述博文的网络模拟平台NETSIM,则NET层网络层以下的 数据链路层和物理层,就勿需验证。
这样,承载NETSIM的真实的TCP|IP协议簇VM,可以简单看做一个 通信机RSM,把在设置有NETSIM系统的各个BROWSER、CLIET、SERVER、INTRUDER、ANALYST、RESOURCES HOLDER、访问控制策略制定者、认证协议和认证服务各端、验证者、CA类联系起来。
基于NETSIM的虚拟网络,有一个最大的好处,就是纯软件,并且可设置“相对底层”的SHELL“壳”,去为“相对高层”的KERNEL“核”服务。
真正的实现,只需要在相应的R|S缓冲区(或称队列)BUFFER放置重在攻防测试的数据即可。
·设计NETSIM上面的如IP虚拟机,不一定要实现全部的功能和机制,但主要的标准IP协议规定的功能目标和性能目标还是要达到。
相对地,如果通过真实的网络硬件平台(物理层,数据链路层),在其上设计TCP|IP的协议攻防,是怎样的情况呢?
第一,不象NETSIM可由VC6的CASYCSOCKET等类实现,应用层以下层是TRANSPARENT透明的,真实平台的设计,五层的每一层,除了物理层外,每层可能需要实现几种协议,而且,细节必须无误。
题外话,《TCP|IP协议详解1,2,3卷》的纸件,8K的,几乎有15厘米厚。
实现起来相当复杂。
第二,NETSIM平台更无需要担心嵌入路由器的系统。软件处理的方式灵活多样。
第三,抛开真实网络平台和硬件的结合紧密程度不说,另外,NETSIM平台可针对“结构虚化,功能接口化”的通信机RSM(即TCP|IP协议处理机实现的的机制),比较方便(?)地设计、测试、验证新的协议。
第四,如果由于过多考虑细节(在真实TCP|IP协议簇的“多处理机”系统),而不把主要精力放在TCP|IP协议簇要实现的目标:网络通信,资源共享,多任务如分布式系统,承载应用……,一是个人或小组资源不够,二是没有必要吧。
_______________________________________________________________________
那么,如何将NETSIM平台上的仿TCP|IP协议处理机攻防研究成果,移植到真实的TCP|IP协议处理机平台上呢?
第一,需求的移植。
第二,以收到和发出的协议数据包为程序处理对象,物理分布是需要将协议数据包放置到内存的具体位置上去。
第三,再次,NETSIM平台上的信息安全研究,是REQUIREMENT ORIENTED,即主要是研究需求。
第四,如果要稳、准确、迅速地进行从模拟平台到真实平台的移植,(这种需求是肯定很有必要的,想象一下,IDS中采集到的异常数据,当然是最好在NETSIM上“演练”,不可能将影响“资源完整性”的情况,象一些B|S网站的用户名+口令+验证码的认证一样傻,“我让你试三次,否则记录你的IP地址”),
我想要用到:形式化的需求,自动程序生成和测试,自动需求测试和验证,高层次的抽象以方便程序自动生成(如前述博文的设计类UML图进行需求描述,自动生成可在真实平台上运行的程序)。
第五,PACKAGE ORIENTED。数据分析要花时间。要根据它而能自动处理(根据IDS的策略和分层POST产生式规则)。
第六,不知道JAVA是如何处理各层协议的,估计也是一个在应用层之上的类族。
在模拟平台的IDS子程序移植到真实TCP|IP平台上时,网卡NIC要被CALL调用,这是第1点。
所谓驱动程序,实际上,就是通过CPU或MCU,和外设之间的内部通信协议,实现协议所要求的各种“指令”,当然,可能也有定时,差错控制和恢复、校验等。
真实TCP|IP平台处理网卡的驱动程序,可能不需要从NETSIM移植的IDS子程序关注。
更泛泛而谈一点,计算机是处理数据,在输入和输出的环境下。
IDS得到入侵的数据是怎么样的呢?
又扯到POST产生式规则:
“在违反信息安全规则和策略完整性的条件下,从有缺陷或者安全性(可以划分如正确性、完整性、一致性)缺损的IP地址及其的端口,按照所用协议的规范,输入合法或非法的协议数据,破坏系统(包括软件系统,网络系统)的安全性,或者非法输出资源数据,以期对该系统进行进一步的入侵”。
见《程序设计语言方法学基础》陈火旺院士著,国防科工委出版的吧,1981年前后。
如果就用单机,用多个应用程序的运行,其实也可简单地模拟TCP|IP协议处理机,为什么呢?这是因为计算机本身能够实现复杂的有限状态自动机功能,因为协议处理实现的就是自动机。
第七、IDS所检测到的、安全性被破坏的系统,是整体协议处理状态机及可能用户参与的状态机的一个截面,或者是系统目标下的一段运行“片断”(此片断可能涉及到涉及到少量到巨量数据的流入和流出)。
第八、这样,就需要GAME THEORY(决策论)对PLAYER:1、数据。2、协议规范。3、实现机制。4、模拟平台。5、IDS的策略和规则。6、安全性证明(如果不能证明处理措施有效,那么有什么必要?)。
_________________________________________________________________________
首先,NETSIM如果是通过有效而正确的论证,而分析、设计、测试的,那就有一个“纯”的平台,
而不会因为程序编码者实现真实协议处理机,产生了DEFECT缺陷,而被该系统所误导。
冯登国博士说,有用它的加密算法。
一、《数值分析》教材中可用于生成随机数吗?
非线性方程的折半法求解,落在左部,就输出0,落在右部,就输出1。
问题是,方程的系数和指数哪里来?如方程a*x*x + b*x + c =0。
2、如果是插值,则原函数和插值哪里来?计算误差来决定随机数吗?
3、常微分方程也一样,初始方程哪里来?
4、得到方程系数和指数的第一种考虑:
可以通过检索INTERNET网页数据来。因为INTERNET的网页上的数据,对于我们来说,都是随机的。只对它的主人和对它感兴趣的人有价值。
这是第一大类、基于《数值分析》课程数学方法,来生成随机数的思想。
也可算作可以“随时随地”生成随机数的第二种方法。
所谓“随时随地”,指不需要硬件设备。可作普通人(如上班族)的序列密码生成器。
·几个进程同时运行,都有循环和消息机制。
·消息机制可用面向对象技术实现,也可用共享文件实现,也可用共享内存区域实现。
·当循环中(循环体中对某三个变量a,b,c,进行计算和赋值)收到某个消息时,就暂时中止循环,将当时恰是的三个值作为一元二次方程的系数。
·“收到某个消息”,类似于嵌入式系统中的中断操作。但中断的发生是有原因的,可能是外部中断,也可能是串口中断等,也需要随机产生。那么就是先有鸡还是先有蛋的问题了。由随机数生成随机数。
但是也可以由一些CASE工具的伪随机数中来吧。比如,PHP等网页设计程序就有一些生成随机数的函数。好象是PHP,一般网页,因为要加密,都会有这类函数吧。
·上面提到的INTERNET网页分类,神经网络ANN就有许多种求法吧。意思就是,直到找到用ANN匹配的网页数据为止。这种匹配的过程,会有一些参数,如匹配次数,匹配上的时间,……等,应该不少。
这些参数的估计和带参数的优化(?乱弹一下,呵呵。也许扯不上),应该可以作为随机数。
·但如果通过检索INTERNET网页来产生随机数,其随机数的位的生成速度是否跟得上?还有一系列的问题要解决吧?包括VC编程
·对INTERNET网页检索的启动,可以通过查电子字典。
这种利用人工神经网络检索分类INTERNET网页的方法,也可以算作是“随时随地”获得随机数的第一种方法。
·黄铠博士(Kai Hwang), Faye A. Briggs的《计算机结构与并行处理》Computer Architecture and Parallel Processing,1990年6月第一版。
单机的目录如下:
“
1·2、单处理机系统中的并行性
1·2·1、基本的单处理机系统结构
1·2·2、并行处理机构
1·2·3、子系统带宽的平衡
1·2·4、多道程序和分时
”
·这里的随机性利用WINDOWS操作系统对多进程的处理原理。
·还可利用WINDOWS的网络程序不定期的对外部的收发数据操作吗?有哪些信息是随机收发的?哪些又是定期的、周期性的,如程控交换机定期检测用户线?第二大类,这又是一个生成随机数的方法。是可以随时随地生成随机数的第三种方法。可用志愿客户机下载Agent来采集网卡收发的数据、并进行用于随机化的处理的方式实现。
用VC不停地、连续读取网卡中的数据,作为随机数的生成源和参照系。其中与时间的参数,是非常关键的(直觉)。
·WINDOWS对存储设备的管理:有数据要写,包括内存和外存,如何LOCATION?
·可能主要是要利用WINDOWS的非抢占式OS的特点。
···这里突然想到,可以设计一个寄居于WINDOWS应用层的VIRTUAL OS:
(1)它上面可运行应用程序(是否完全由VOS控制和管理?),形成进程。
(2)它控制和管理一定的资源,可以是虚拟的,仅仅是数据区。
进程获得资源和释放资源,是与其程序结构有关的。由于每个进程都可能同时得到多种多个资源,并占用一段时间,可以假设只有具有这种资源特性的两种程序结构的进程A和B。
那么,随机性在哪里呢?除了排队机制,这样想来,应该是跟资源分配机制有关吧。由资源分配机制而得到随机性?
资源分配机制,不是和访问控制机制紧密相关吗?不又是要靠预设的POST产生式规则?
或者,不妨假设有一种一级级控制的主循环到子循环。子循环可能是一个以上分循环。
这样,可能是一个博弈方和其他多个博弈方,根据规则的博弈。来争夺处理机资源和时间片资源。
但并行机制怎么模拟的问题,考虑博弈吧。这种并行机制是分层的。
也就是2003年开始考虑的嵌套的POST产生式规则。
··综合上面几小段,看来就是一个更大的博弈:“资源分配规则和访问控制规则和博弈规则”。规则的解释程序,如何方便产生随机性?选择什么规则来优先执行,是元规则的事,元规则是关于规则的规则。
这样一级一级的规则控制链,能产生随机性吗?
如CLIPS,是开放源代码的。或者说,我持有其一个版本,2003年的源代码都是C代码。
------
虚拟资源包括:
A、处理机资源。主要是占用VOS的时间片。
B、存储资源。通过VOS虚拟机描述的“内存”和VOS虚拟机描述的“外存”。当然,实际上是对PC机的存储资源进行管理。但VOS上的用户程序和用户进程,只看到虚拟的“存储资源”。
C、设备资源。这些VOS控制和管理的“外部设备”,可以有智能的特性。它会象PC机的外设,如键盘和鼠标一样,主动地要求OS处理。这种智能的根本特性,一是要争夺处理机资源和存储资源,二是
D、程序资源和进程资源和线程资源。这些资源不再象PC机的程序资源一样,需要人来规划、启动。
E、更进一步,第一,程序是根据需求来人工编程生成的。第二,需求从哪里来?第三,有移民加拿大的同学,曾经答应别人做采集INTERNET数据的自动程序。那么,
需求就可以从这里来:
一个需求采集程序ReCoProg,
-1-,根据一本电子词典,随机地,比如,从P开头的词条选择句子。
-2-,或者象百度和谷歌一样,随机检索出一段原文p_t。
-3-,又:原有一个对自然语言进行特定翻译的NaTra软件,根据p_t生成特定的需求。
-4-,用于VOS的编程。
-5-,这种编程,要根据资源的限制。不能随意瞎编。
如上所述,这是另一种生成几乎是“真的”的随机数的方法。第三大类。
翻译电子词典,是第四大类。因为自然语言,哪怕是左拼右凑的几十个不同句子。只要让NaTra去翻译,ド 沙绦颍 材苌 伞?/p>
第五大类,根据光照的计量,是局部随机的(虽然,总体上是一个概率分布)。光敏传感器,多点采集阳光数据。
第六大类,能源网络的源头,采集能源流数据。如水坝、使用中煤气管道各种指标的测量、电流的波动的精细测量……
第七大类,交通流。
第八大类,各种传感器能连续(一定意义上,随机数的个数够用就行)感知,并能采集到。
……
那么,用于流密码的随机数,要求收发两端都会产生一样的随机数流吗?
二、对前述八大类随机数生成方法的思想,作一个简明扼要的比较分析……
这样《计算机密码学》课程小论文的第一篇,搞掂。
补:为什么随机数的作用很大呢?因为,象各种密钥,都不是人们去自己设置网易VIP邮箱的密码一样设定,在密码学中,一般都是随机数,因为在一方面,这种随机数密码和现实世界、和使用者,没有一点的相关性。
三、使用有限状态自动机用于加密算法的理解和分析