CN107741947B - 基于hdfs文件系统的随机数密钥的存储与获取方法 - Google Patents

基于hdfs文件系统的随机数密钥的存储与获取方法 Download PDF

Info

Publication number
CN107741947B
CN107741947B CN201710760282.9A CN201710760282A CN107741947B CN 107741947 B CN107741947 B CN 107741947B CN 201710760282 A CN201710760282 A CN 201710760282A CN 107741947 B CN107741947 B CN 107741947B
Authority
CN
China
Prior art keywords
random number
file
cache module
file system
hdfs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710760282.9A
Other languages
English (en)
Other versions
CN107741947A (zh
Inventor
赵一鸣
曹文钊
江海涛
赵义博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Qtec Information Technology Co ltd
Original Assignee
Zhejiang Qtec Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Qtec Information Technology Co ltd filed Critical Zhejiang Qtec Information Technology Co ltd
Priority to CN201710760282.9A priority Critical patent/CN107741947B/zh
Publication of CN107741947A publication Critical patent/CN107741947A/zh
Application granted granted Critical
Publication of CN107741947B publication Critical patent/CN107741947B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • G06F16/134Distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

一种基于HDFS文件系统的随机数密钥的存储与获取方法,包括随机数存储以及随机数获取,该方法通过将随机数序列分为小的文件块,并将该些文件块从写入缓存模块存入HDFS分布式文件系统以及通过读取缓存模块获取随机数序列,在写入缓存模块可实时的进行随机数序列补充,摒弃了对HDFS分布式文件系统进行频繁写入的方式,在整体的时域内提高了系统的存储能力,同时,外界获取随机数密钥只需从读取缓存模块中获取即可,从读取缓存模块获取密钥的响应时间极短,仅为HDFS分布式文件系统以及传统的数据库的百分之一至千分之一,很大程度上提高了密钥获取的效率。

Description

基于HDFS文件系统的随机数密钥的存储与获取方法
技术领域
本发明涉及密钥存储技术领域,特别涉及一种基于HDFS文件系统的随机数密钥的存储与获取方法。
背景技术
随着互联网的大范围普及,人类之间的信息传递达到了前所未有的数量和频率,各种隐私信息越来越多地暴露在互联网上,因此,人类对保密通信的需求也到了前所未有的高度,目前,数据信息采用随机数密钥加密是最常规保证通信安全的手段,所以对随机数密钥的需求量是很大的,在大量随机数密钥存储方面就存在着许多问题。一般而言,随机数密钥是被拆分成固定长度的大小,存储在传统数据库中,获取随机数密钥时,在传统数据库里获取指定个数的密钥。但这种存储方式存在的问题是:密钥的长度被固定,需要把整个固定长度的密钥获取完,才能补充新的随机数密钥,这样就导致了实时存储密钥的数量受到限制,无法存储TB级别的随机数密钥数量;另外,在密钥获取时直接从数据库获取,其获取的响应时间较慢。
发明内容
本发明目的在于提供一种基于HDFS文件系统的随机数密钥的存储与获取方法,以解决现有技术中密钥存储中的密钥的长度被固定,需要把整个固定长度的密钥获取完,才能补充新的随机数密钥,导致实时存储密钥的数量受到限制,无法存储TB级别的随机数密钥数量;以及在密钥获取时直接从数据库获取,其获取的响应时间较慢的技术性缺陷。
本发明的技术方案是这样实现的:
一种基于HDFS文件系统的随机数密钥的存储与获取方法,包括可产生随机数的随机数发生器、写入缓存模块、HDFS分布式文件系统、文件名索引数据库、读取缓存模块以及获取任意长度随机数节点,所述随机数发生器依次连接写入缓存模块、HDFS分布式文件系统、文件名索引数据库,所述文件名索引数据库分别连接写入缓存模块与读取缓存模块,所述获取随机数节点连接读取缓存模块,所述存储与分发包括以下步骤:
随机数存储
a)随机数发生器产生随机数,该些随机数写入到固定大小的写入缓存模块中;
b)当写入的随机数到达一定的阈值M大小时,写入到HDFS文件系统并以文件块的形式进行存储;
c)对写入随机数的文件块进行保存,同时将该文件块对应的文件名保存在文件名索引数据库中;
获取随机数
d)获取随机数节点从读取缓存模块中获取指定长度的随机数;
e)如果读取缓存模块为空或者长度小于一定阈值M,则从文件名索引数据库中选出一条,根据对应文件名,从HDFS分布式文件系统中读出一个文件块到读取缓存模块中;
f)在读取缓存模块设置有一个指针,每次要获取多少长度的密钥,就将该指针移动相应位数;
g)读取缓存模块大小为可容纳若干文件块,文件块之间设置有临界区,当指针移动跨越N个文件块的临界区时,就证明N个文件块中的所有密钥已经被获取完,则在文件名索引数据库中删除该N个文件块的文件名记录,并从文件名索引数据库中取出一条文件记录,从HDFS分布式文件系统中获取一个新的文件块到读取缓存模块中;
h)HDFS分布式文件系统中被读取出的文件块位置通过写入缓存模块内的随机数补充,进而写入缓存模块内的空余位置通过随机数发生器产生随机数补充。
优选地,所述获取随机数节点每次要获取的随机数小于或等于N个文件块内所存储的随机数。
优选地,所述读取缓存模块大小只容纳两个文件块,当指针移动跨越两个文件块的临界区时,就证明一个文件块中的所有随机数已经被获取完。
优选地,步骤g)中,若指针移动没有跨越文件块的临界区时,就证明一个文件块中的密钥没被获取完,则不需要从HDFS分布式文件系统中获取一个新的文件块到读取缓存模块中。
与现有技术相比,本发明有以下有益效果:
本发明的基于HDFS文件系统的随机数密钥的存储与获取方法,通过将随机数序列分为小的文件块,并将该些文件块从写入缓存模块存入HDFS分布式文件系统以及通过读取缓存模块获取随机数序列,在写入缓存模块可实时的进行随机数序列补充,摒弃了对HDFS分布式文件系统进行频繁写入的方式,在整体的时域内提高了系统的存储能力,同时,外界获取随机数密钥只需从读取缓存模块中获取即可,从读取缓存模块获取密钥的响应时间极短,仅为HDFS分布式文件系统以及传统的数据库的百分之一至千分之一,很大程度上提高了密钥获取的效率。
附图说明
图1为本发明基于HDFS文件系统的随机数密钥的存储与获取方法的原理图。
图中:随机数发生器100、写入缓存模块200、HDFS分布式文件系统300、文件名索引数据库400、读取缓存模块500、获取任意长度随机数节点600。
具体实施方式
下面将结合本发明实施例中的附图,对本发明进行清楚、完整地描述。
如图1所示,一种基于HDFS文件系统的随机数密钥的存储与获取方法,包括可产生随机数的随机数发生器100、写入缓存模块200、HDFS分布式文件系统300、文件名索引数据库400、读取缓存模块500以及获取任意长度随机数节点600,所述随机数发生器100依次连接写入缓存模块200、HDFS分布式文件系统300、文件名索引数据库400,所述文件名索引数据库400分别连接写入缓存模块200与读取缓存模块500,所述获取随机数节点600连接读取缓存模块500,其中,运行在HDFS分布式文件系统300上的应用具有很大的数据集,系统上的一个典型文件大小一般都在G字节至T字节。因此,HDFS被调节以支持大文件存储。它应该能提供整体上高的数据传输带宽,能在一个集群里扩展到数百个节点来支持文件块。一个单一的HDFS实例能支撑数以千万计的文件块。所述存储与分发包括以下步骤:
随机数存储
a)随机数发生器产生随机数,该些随机数写入到固定大小的写入缓存模块中;
b)当写入的随机数到达一定的阈值M大小时,写入到HDFS文件系统并以文件块的形式进行存储,该些文件块的大小一般需要由获取随机数节点决定,需要获取的随机数密钥长度一般要小于一至两个文件块的大小;
c)对写入随机数的文件块进行保存,同时将该文件块对应的文件名保存在文件名索引数据库中,随机数密钥采用文件块的形式存储在HDFS文件系统中,可有效的降低了文件名字节数,为文件名索引数据库节省了大量的存储空间;
获取随机数
d)获取随机数节点从读取缓存模块中获取指定长度的随机数;
e)如果读取缓存模块为空或者长度小于一定阈值M,则从文件名索引数据库中选出一条,根据对应文件名,从HDFS分布式文件系统中读出一个文件块到读取缓存模块中,读取缓存模块可实时的补充内部的随机数密钥,其补充随机数密钥所需的响应时间不影响获取随机数节点从读取缓存模块获取密钥的时间;
f)在读取缓存模块设置有一个指针,每次要获取多少长度的密钥,就将该指针移动相应位数,该指针起到了书签的作用;
g)读取缓存模块大小为可容纳若干文件块,文件块之间设置有临界区,当指针移动跨越N个文件块的临界区时,就证明N个文件块中的所有密钥已经被获取完,则在文件名索引数据库中删除该N个文件块的文件名记录,并从文件名索引数据库中取出一条文件记录,从HDFS分布式文件系统中获取一个新的文件块到读取缓存模块中;
h)HDFS分布式文件系统中被读取出的文件块位置通过写入缓存模块内的随机数补充,进而写入缓存模块内的空余位置通过随机数发生器产生随机数补充。
所述获取随机数节点每次要获取的随机数小于或等于N个文件块内所存储的随机数,保证了获取随机数节点能一次性获取足够多的随机数密钥,避免了多次获取影响效率。
所述读取缓存模块大小只容纳两个文件块,当指针移动跨越两个文件块的临界区时,就证明一个文件块中的所有随机数已经被获取完。
步骤g)中,若指针移动没有跨越文件块的临界区时,就证明一个文件块中的密钥没被获取完,则不需要从HDFS分布式文件系统中获取一个新的文件块到读取缓存模块中。
综合本发明的原理可知,本发明的基于HDFS文件系统的随机数密钥的存储与获取方法,通过将随机数序列分为小的文件块,并将该些文件块从写入缓存模块存入HDFS分布式文件系统以及通过读取缓存模块获取随机数序列,在写入缓存模块可实时的进行随机数序列补充,摒弃了对HDFS分布式文件系统进行频繁写入的方式,在整体的时域内提高了系统的存储能力,同时,外界获取随机数密钥只需从读取缓存模块中获取即可,从读取缓存模块获取密钥的响应时间极短,仅为HDFS分布式文件系统以及传统的数据库的百分之一至千分之一,很大程度上提高了密钥获取的效率。

Claims (4)

1.一种基于HDFS文件系统的随机数密钥的存储与获取方法,其特征在于,执行该方法的装置包括可产生随机数的随机数发生器、写入缓存模块、HDFS分布式文件系统、文件名索引数据库、读取缓存模块以及获取任意长度随机数节点,所述随机数发生器依次连接写入缓存模块、HDFS分布式文件系统、文件名索引数据库,所述文件名索引数据库分别连接写入缓存模块与读取缓存模块,所述获取任意长度随机数节点连接读取缓存模块,所述存储与获取包括以下步骤:
随机数存储
a)随机数发生器产生随机数,所述随机数写入到固定大小的写入缓存模块中;
b)当写入的随机数到达一定的阈值M大小时,写入到HDFS分布式文件系统并以文件块的形式进行存储;
c)对写入随机数的文件块进行保存,同时将该文件块对应的文件名保存在文件名索引数据库中;
获取随机数
d)获取任意长度随机数节点从读取缓存模块中获取指定长度的随机数;
e)如果读取缓存模块为空或者长度小于一定阈值M,则从文件名索引数据库中选出一条,根据对应文件名,从HDFS分布式文件系统中读出一个文件块到读取缓存模块中;
f)在读取缓存模块设置有一个指针,每次要获取多少长度的密钥,就将该指针移动相应位数;
g)读取缓存模块大小为可容纳若干文件块,文件块之间设置有临界区,当指针移动跨越N个文件块的临界区时,就证明N个文件块中的所有密钥已经被获取完,则在文件名索引数据库中删除该N个文件块的文件名记录,并从文件名索引数据库中取出一条文件记录,从HDFS分布式文件系统中获取该文件块到读取缓存模块中;
h)HDFS分布式文件系统中被读取出的文件块位置通过写入缓存模块内的随机数补充,进而写入缓存模块内的空余位置通过随机数发生器产生随机数补充。
2.如权利要求1所述的基于HDFS文件系统的随机数密钥的存储与获取方法,其特征在于,所述获取随机数节点每次要获取的随机数小于或等于N个文件块内所存储的随机数。
3.如权利要求2所述的基于HDFS文件系统的随机数密钥的存储与获取方法,其特征在于,所述读取缓存模块大小只容纳两个文件块,当指针移动跨越两个文件块的临界区时,就证明一个文件块中的所有随机数已经被获取完。
4.如权利要求3所述的基于HDFS文件系统的随机数密钥的存储与获取方法,其特征在于,步骤g)中,若指针移动没有跨越文件块的临界区时,就证明一个文件块中的密钥没被获取完,则不需要从HDFS分布式文件系统中获取一个新的文件块到读取缓存模块中。
CN201710760282.9A 2017-08-30 2017-08-30 基于hdfs文件系统的随机数密钥的存储与获取方法 Active CN107741947B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710760282.9A CN107741947B (zh) 2017-08-30 2017-08-30 基于hdfs文件系统的随机数密钥的存储与获取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710760282.9A CN107741947B (zh) 2017-08-30 2017-08-30 基于hdfs文件系统的随机数密钥的存储与获取方法

Publications (2)

Publication Number Publication Date
CN107741947A CN107741947A (zh) 2018-02-27
CN107741947B true CN107741947B (zh) 2020-04-24

Family

ID=61235762

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710760282.9A Active CN107741947B (zh) 2017-08-30 2017-08-30 基于hdfs文件系统的随机数密钥的存储与获取方法

Country Status (1)

Country Link
CN (1) CN107741947B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108932287B (zh) * 2018-05-22 2019-11-29 广东技术师范大学 一种基于Hadoop的海量小文件写入方法
CN108958666A (zh) * 2018-07-26 2018-12-07 浪潮电子信息产业股份有限公司 一种数据处理方法及主控芯片
CN110781140B (zh) * 2019-09-06 2023-08-18 平安科技(深圳)有限公司 区块链中数据签名的方法、装置、计算机设备及存储介质
CN112559445B (zh) * 2020-12-11 2022-12-27 上海哔哩哔哩科技有限公司 数据写入方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515851A (zh) * 2001-10-09 2009-08-26 高通股份有限公司 用于数据处理系统内安全性的方法和装置
CN103731261A (zh) * 2014-01-09 2014-04-16 西安电子科技大学 加密重复数据删除场景下的密钥分发方法
US9160533B2 (en) * 2013-03-05 2015-10-13 International Business Machines Corporation Random number generation
US9483494B1 (en) * 2013-03-14 2016-11-01 Emc Corporation Opportunistic fragmentation repair
CN106357396A (zh) * 2016-09-23 2017-01-25 浙江神州量子网络科技有限公司 数字签名方法和系统以及量子密钥卡

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9384368B2 (en) * 2012-12-28 2016-07-05 Intel Corporation Instruction and logic for mid-level caching of random numbers distributed to multiple units

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515851A (zh) * 2001-10-09 2009-08-26 高通股份有限公司 用于数据处理系统内安全性的方法和装置
US9160533B2 (en) * 2013-03-05 2015-10-13 International Business Machines Corporation Random number generation
US9483494B1 (en) * 2013-03-14 2016-11-01 Emc Corporation Opportunistic fragmentation repair
CN103731261A (zh) * 2014-01-09 2014-04-16 西安电子科技大学 加密重复数据删除场景下的密钥分发方法
CN106357396A (zh) * 2016-09-23 2017-01-25 浙江神州量子网络科技有限公司 数字签名方法和系统以及量子密钥卡

Also Published As

Publication number Publication date
CN107741947A (zh) 2018-02-27

Similar Documents

Publication Publication Date Title
CN107741947B (zh) 基于hdfs文件系统的随机数密钥的存储与获取方法
US10303596B2 (en) Read-write control method for memory, and corresponding memory and server
CN107423422B (zh) 基于网格的空间数据分布式存储及检索方法和系统
CN101533408B (zh) 一种海量数据的处理方法及处理装置
US10642515B2 (en) Data storage method, electronic device, and computer non-volatile storage medium
CN102646130B (zh) 一种海量历史数据的存储及索引方法
JP4251726B2 (ja) ファイル管理方法
CN105612518A (zh) 用于自主存储器搜索的方法及系统
CN102402602A (zh) 一种实时数据库的b+树索引方法及装置
CN103412916A (zh) 一种监控系统的多维度数据存储、检索方法及装置
CN108021717B (zh) 一种轻量级嵌入式文件系统的实现方法
CN107391544B (zh) 列式存储数据的处理方法、装置、设备及计算机储存介质
CN103914483B (zh) 文件存储方法、装置及文件读取方法、装置
CN104331453A (zh) 一种分布式文件系统及分布式文件系统的构建方法
KR102316271B1 (ko) 데이터 저장장치의 주소 맵핑 테이블 운용 방법
CN106951375A (zh) 在存储系统中删除快照卷的方法及装置
CN102291256A (zh) 一种监控数据的查询方法和设备
CN110727406A (zh) 一种数据存储调度方法及装置
CN116244313B (zh) Json数据存储和访问方法、装置、计算机设备及介质
CN116756253B (zh) 关系型数据库的数据存储、查询方法、装置、设备和介质
CN104699815A (zh) 数据处理方法和系统
CN104111899A (zh) 一种缓存数据的存储方法及系统及读取方法
CN109271097A (zh) 数据处理方法、数据处理装置和服务器
CN108647243B (zh) 基于时间序列的工业大数据存储方法
RU2003108836A (ru) Способ воспроизведения, устройство воспроизведения, способ записи и устройство записи

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Zhao Yiming

Inventor after: Cao Wenzhao

Inventor after: Jiang Haitao

Inventor after: Zhao Yibo

Inventor before: Zhao Yiming

Inventor before: Cao Wenzhao

Inventor before: Zhao Yibo

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant