CN105005743B - 电话号码漂白和反向漂白方法 - Google Patents
电话号码漂白和反向漂白方法 Download PDFInfo
- Publication number
- CN105005743B CN105005743B CN201510318831.8A CN201510318831A CN105005743B CN 105005743 B CN105005743 B CN 105005743B CN 201510318831 A CN201510318831 A CN 201510318831A CN 105005743 B CN105005743 B CN 105005743B
- Authority
- CN
- China
- Prior art keywords
- telephone number
- bleaching
- shifts
- digits
- private parts
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明涉及电话号码漂白和反向漂白方法。该漂白方法包括:步骤10、输入待漂白电话号码,根据电话号码非隐私部分的数字按一定的方式计算号码偏移值p;步骤20、将电话号码隐私部分的8位数字存储为数组digits,隐私部分不足8位数字时在隐私部分首位前用0补足8位,预先确定隐私部分8位数字的转换顺序并存储为数组shifts;步骤30、保存digits中shifts[0]对应的数字d8==digits[shifts[0]];步骤40、按照shifts定义的顺序,逐一修改digits中对应位置的数字;步骤50、将电话号码非隐私部分的数字与修改后的隐私部分的8位数字组合成漂白后的电话号码并输出。本发明还提供了相应的反向漂白方法。本发明的电话号码漂白和反向漂白方法保持数据高仿真度、漂白过程不易被破解。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种电话号码漂白和反向漂白方法。
背景技术
数据漂白是使数据更加安全的一种计算机处理过程,它与数据加密不同,数据加密后是无法正常读取和使用的,必须解密才能使用。而数据漂白是将数据通过一定的算法变成另一种样式,而这种样式是可读的,并且与原数据是同一类的。数据漂白根据漂白的具体需求,根据不同的漂白字段,制定不同的漂白算法,以保证漂白后的数据具有高仿真度,高仿真度是区分数据漂白算法与普通加密算法的重要标志,漂白是一种特殊的加密过程,经过漂白处理后的数据必须要能够保证具备可读性、逻辑关联性和安全性,并且能够通过反向漂白还原成原数据。
数据漂白分为正向漂白和反向漂白。正向漂白是将原始数据经过漂白处理形成漂白后数据的过程。反向漂白是将漂白后的数据经过反向处理还原成原始数据的过程。随着大数据技术的成熟和发展,大数据在商业上的应用越来越广泛,有关大数据的交互、整合、交换、交易的例子也日益增多,必须保障数据中涉及客户和生产的敏感信息不外泄,这些信息包括客户姓名、电话、住址、身份证号码等个人敏感信息,以及柜员类和企业类的敏感信息等。数据漂白常用于由于需要在非生产环境中使用生产数据的场景,例如测试、开发、培训、外包、数据挖掘和研究等,通过数据漂白过程,能够减少数据使用的限制,保障数据中涉及客户和生产的敏感信息不外泄,不侵害用户的个人隐私数据,且具有高仿真度。
我国目前常用的电话号码包含以下几种:手机号码(11位数字)、本地电话号码(8位数字或7位数字)和长途电话号码(3~4位区号+本地号码)等,这几种号码中最后8位数字或7位数字(本地电话号码为7位的情况下)是电话号码中涉及敏感信息的隐私部分,隐私部分之前的数字是非隐私部分,为了保障电话号码隐私部分不外泄,需要针对电话号码隐私部分设计一种漂白和反向漂白方法。
发明内容
本发明的目的在于提供一种电话号码漂白方法,对电话号码进行漂白,保持数据高仿真度、漂白过程不易被破解。
本发明的另一目的在于提供一种电话号码反向漂白方法,将漂白后的电话号码还原成原始电话号码。
为实现上述目的,本发明提供一种电话号码漂白方法,包括:
步骤10、输入待漂白电话号码,根据电话号码非隐私部分的数字按一定的方式计算号码偏移值p,且满足0<p<10;
步骤20、将电话号码隐私部分的8位数字存储为数组digits,隐私部分不足8位数字时在隐私部分首位前用0补足8位,预先确定隐私部分8位数字的转换顺序并存储为数组shifts;
步骤30、保存digits中shifts[0]对应的数字d8==digits[shifts[0]];
步骤40、按照shifts定义的顺序,逐一修改digits中对应位置的数字,修改方式为:digits[shifts[i]]=mod(digits[shifts[i+1]]+p,10),其中0≤i<7;digits[shifts[7]]=mod(d8+p,10);
步骤50、将电话号码非隐私部分的数字与修改后的隐私部分的8位数字组合成漂白后的电话号码并输出。
其中,所述电话号码为11位手机号码,8位本地号码,7位本地号码,区号加8位本地号码,或区号加7位本地号码。
其中,p=mod(sum+3,5)+2,其中sum为电话号码非隐私部分的数字之和。
其中,shifts=[0,6,2,5,3,7,4,1]。
为实现上述目的,本发明还提供了一种电话号码反向漂白方法,包括:
步骤110、输入待反向漂白电话号码,根据电话号码非隐私部分的数字按与漂白时相同的方式计算号码偏移值p,且满足0<p<10;
步骤120、将电话号码隐私部分的8位数字存储为数组digits,预先确定的隐私部分的8位数字的转换顺序数组shifts与漂白时相同;
步骤130、保存digits中shifts[7]对应的数字d8=digits[shifts[7]];
步骤140、按照shifts定义的顺序的反向,逐一修改digits中对应位置的数字,修改方式为:digits[shifts[7-i]]=mod(digits[shifts[6-i]]-p,10),其中0≤i<7;digits[shifts[0]]=mod(d8-p,10);
步骤150、将电话号码非隐私部分的数字与修改后的隐私部分的8位数字组合成漂白前的电话号码并输出。
其中,所述电话号码为11位手机号码,8位本地号码,7位本地号码,区号加8位本地号码,或区号加7位本地号码。
其中,p=mod(sum+3,5)+2,其中sum为电话号码非隐私部分的数字之和。
其中,shifts=[0,6,2,5,3,7,4,1]。
综上所述,本发明的电话号码漂白方法能够对电话号码进行漂白,保持数据高仿真度、漂白过程不易被破解,适合于漂白大规模数据;本发明的电话号码反向漂白方法,能够将漂白后的电话号码还原成原始电话号码。
附图说明
图1为本发明电话号码漂白方法的流程图。
具体实施方式
下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其有益效果显而易见。
参见图1,其为本发明电话号码漂白方法的流程图。漂白方法主要包括:
步骤10、输入待漂白电话号码,根据电话号码非隐私部分的数字按一定的方式计算号码偏移值p,且满足0<p<10。
计算方式可以是根据电话号码非隐私部分的数字之和sum来计算。对于11位手机号码,可以根据最后8位数字以外的数字计算一个号码偏移值p,p需大于0并小于10,例如,计算方式可以为:若其他数字之和为sum,p=(sum+3)%5+2。对于8位本地号码或7位本地号码,非隐私部分的数字之和sum可以按0来计算。区号加8位本地号码,或区号加7位本地号码的情况,非隐私部分的数字之和sum可以是区号的数字之和。
步骤20、将电话号码隐私部分的8位数字存储为数组digits,隐私部分不足8位数字时在隐私部分首位前用0补足8位,预先确定隐私部分8位数字的转换顺序并存储为数组shifts。
对于7位本地号码,或区号加7位本地号码的情况,在隐私部分首位前用0补足8位。可以事先确定一个各八位数之间转换顺序数组shifts,例如:shifts=[0,6,2,5,3,7,4,1]。转换顺序数组可以任意指定,从而保证随机性及不易被反向破解。将电话号码后八位数字以数组形式存储起来,为digits。
步骤30、保存digits中shifts[0]对应的数字d8==digits[shifts[0]]。保存digits中shifts[0](shifts数组的第0个值)对应的那位数字。
步骤40、按照shifts定义的顺序,逐一修改digits中对应位置的数字,修改方式为:digits[shifts[i]]=mod(digits[shifts[i+1]]+p,10),其中0≤i<7;digits[shifts[7]]=mod(d8+p,10)。
根据shifts定义的顺序,修改8位电话号码,其中digits中shifts[0]位的新值为shifts[1]上值加上偏移值p,以此类推,直到最后一位,shifts[7]位的新值为之前保存的d8加上偏移值p。如果新值大于9,需减去10。
以代码表示如下:
步骤50、将电话号码非隐私部分的数字与修改后的隐私部分的8位数字组合成漂白后的电话号码并输出。
将电话号码后8位以外的数字依次拼接上digits中的8位新值组成新的电话号码,此号码即为漂白后的电话号码。
本发明的漂白方法对于固定的输入漂白后的输出是确定的,但计算过程中各个编码的改变有较强的随机性,结果有高仿真度且不易被反向破解。漂白后的输出数据具有可用性及易用性,用户可以通过选择需要的函数和参数来定制漂白的过程;而且由于本发明对于固定的输入漂白后的输出是确定的,可以根据需要任意拆分输入数据进行并行处理,适合于漂白大规模数据。
本发明还提供了相应的反向漂白方法,主要包括:
步骤110、输入待反向漂白电话号码,根据电话号码非隐私部分的数字按与漂白时相同的方式计算号码偏移值p,且满足0<p<10。
使用与漂白过程中相同的方法计算一个号码偏移值p,例如:若其他数字之和为sum,p=(sum+3)%5+2。
步骤120、将电话号码隐私部分的8位数字存储为数组digits,预先确定的隐私部分的8位数字的转换顺序数组shifts与漂白时相同。
使用与漂白过程中相同的8位数之间转换顺序数组shifts,例如:shifts=[0,6,2,5,3,7,4,1]。将电话号码后8位数字以数组形式存储起来,为digits。
步骤130、保存digits中shifts[7]对应的数字d8=digits[shifts[7]]。保存digits中shifts[7](shifts数组的最后一个值)对应的那位数字。
步骤140、按照shifts定义的顺序的反向,逐一修改digits中对应位置的数字,修改方式为:digits[shifts[7-i]]=mod(digits[shifts[6-i]]-p,10),其中0≤i<7;digits[shifts[0]]=mod(d8-p,10)。
根据shifts定义的反向顺序,修改8位电话号码,其中digits中shifts[7]位的新值为shifts[6]上值减去偏移值p,以此类推,直到第0位,shifts[0]位的新值为之前保存的d8减去偏移值p。如果,如果新值小于0,则需加上10。
以代码表示如下:
步骤150、将电话号码非隐私部分的数字与修改后的隐私部分的8位数字组合成漂白前的电话号码并输出。
将电话号码后8位以外的数字依次拼接上digits中的8位新值组成新的电话号码,此号码即为漂白前的电话号码。
综上所述,本发明的电话号码漂白方法能够对电话号码进行漂白,保持数据高仿真度、漂白过程不易被破解,适合于漂白大规模数据;本发明的电话号码反向漂白方法,能够将漂白后的电话号码还原成原始电话号码。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种电话号码漂白方法,其特征在于,包括:
步骤10、输入待漂白电话号码,根据电话号码非隐私部分的数字按一定的方式计算号码偏移值p,且满足0<p<10;
步骤20、将电话号码隐私部分的8位数字存储为数组digits,隐私部分不足8位数字时在隐私部分首位前用0补足8位,预先确定所述数组digits中所存储的隐私部分8位数字的转换顺序并存储为数组shifts;
步骤30、保存digits中shifts[0]对应的数字d8=digits[shifts[0]];
步骤40、按照shifts定义的顺序,逐一修改digits中对应位置的数字,修改方式为:digits[shifts[i]]=mod(digits[shifts[i+1]]+p,10),其中0≤i<7;digits[shifts[7]]=mod(d8+p,10);
步骤50、将电话号码非隐私部分的数字与修改后的隐私部分的8位数字组合成漂白后的电话号码并输出。
2.根据权利要求1所述的电话号码漂白方法,其特征在于,所述电话号码为11位手机号码,8位本地号码,7位本地号码,区号加8位本地号码,或区号加7位本地号码。
3.根据权利要求1所述的电话号码漂白方法,其特征在于,p=mod(sum+3,5)+2,其中sum为电话号码非隐私部分的数字之和。
4.根据权利要求1所述的电话号码漂白方法,其特征在于,shifts=[0,6,2,5,3,7,4,1]。
5.一种基于权利要求1所述电话号码漂白方法的电话号码反向漂白方法,其特征在于,包括:
步骤110、输入待反向漂白电话号码,根据电话号码非隐私部分的数字按与漂白时相同的方式计算号码偏移值p,且满足0<p<10;
步骤120、将电话号码隐私部分的8位数字存储为数组digits,预先确定的隐私部分的8位数字的转换顺序数组shifts与漂白时相同;
步骤130、保存digits中shifts[7]对应的数字d8=digits[shifts[7]];
步骤140、按照shifts定义的顺序的反向,逐一修改digits中对应位置的数字,修改方式为:digits[shifts[7-i]]=mod(digits[shifts[6-i]]-p,10),其中0≤i<7;digits[shifts[0]]=mod(d8-p,10);
步骤150、将电话号码非隐私部分的数字与修改后的隐私部分的8位数字组合成漂白前的电话号码并输出。
6.根据权利要求5所述的电话号码反向漂白方法,其特征在于,所述电话号码为11位手机号码,8位本地号码,7位本地号码,区号加8位本地号码,或区号加7位本地号码。
7.根据权利要求5所述的电话号码反向漂白方法,其特征在于,p=mod(sum+3,5)+2,其中sum为电话号码非隐私部分的数字之和。
8.根据权利要求5所述的电话号码反向漂白方法,其特征在于,shifts=[0,6,2,5,3,7,4,1]。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510318831.8A CN105005743B (zh) | 2015-06-11 | 2015-06-11 | 电话号码漂白和反向漂白方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510318831.8A CN105005743B (zh) | 2015-06-11 | 2015-06-11 | 电话号码漂白和反向漂白方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105005743A CN105005743A (zh) | 2015-10-28 |
CN105005743B true CN105005743B (zh) | 2018-02-02 |
Family
ID=54378412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510318831.8A Active CN105005743B (zh) | 2015-06-11 | 2015-06-11 | 电话号码漂白和反向漂白方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105005743B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109711189B (zh) * | 2018-12-19 | 2021-09-03 | 上海晶赞融宣科技有限公司 | 数据脱敏方法及装置、存储介质、终端 |
CN110162988A (zh) * | 2019-05-22 | 2019-08-23 | 咪付(深圳)网络技术有限公司 | 一种基于业务系统的敏感数据加密方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6158027A (en) * | 1998-08-31 | 2000-12-05 | International Business Machines Corporation | Enhanced noise-predictive maximum likelihood (NPML) data detection method and apparatus for direct access storage device (DASD) |
CN102054149B (zh) * | 2009-11-06 | 2013-02-13 | 中国科学院研究生院 | 一种恶意代码行为特征提取方法 |
US8810560B2 (en) * | 2010-12-13 | 2014-08-19 | Apple Inc. | Methods and apparatus for scrambler synchronization |
-
2015
- 2015-06-11 CN CN201510318831.8A patent/CN105005743B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105005743A (zh) | 2015-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106161006B (zh) | 一种数字加密算法 | |
CN105205359B (zh) | 一种JavaScript代码保护方法及装置 | |
CN103377326B (zh) | 一种动态网页程序代码的混淆加密方法及装置 | |
CN111767565B (zh) | 一种数据脱敏的处理方法、处理装置和存储介质 | |
US10009169B2 (en) | Format-preserving cipher | |
CN111125736A (zh) | 基于隐私保护交集计算协议的致病基因检测方法 | |
GB2520446A (en) | Quorum based data processing | |
US20180241545A1 (en) | Format-Preserving Cipher | |
CN105069335A (zh) | 一种密码设置方法、验证方法和终端 | |
SE1350203A1 (sv) | Anordning och förfarande för blockkrypteringsprocess för osäkra miljöer | |
CN104462990A (zh) | 字符串加解密方法和装置 | |
CN103095449B (zh) | 一种基于流密码的动态加密解密方法 | |
CN107078899A (zh) | 混淆数据的方法 | |
CN106610995A (zh) | 一种创建密文索引的方法、装置及系统 | |
CN105898054A (zh) | 一种基于验证的消息显示方法及通信终端 | |
CN104463019B (zh) | 电子文档的加解密方法 | |
CN105760741A (zh) | 密码输入方法、安全芯片及系统 | |
CN108510327A (zh) | 优惠券生成方法和系统 | |
CN105005743B (zh) | 电话号码漂白和反向漂白方法 | |
CN102612025B (zh) | 手机文件保护系统及方法 | |
CN110245520A (zh) | 一种文档加密方法、文档加密装置及终端设备 | |
CN110990846B (zh) | 信息存储方法、设备及计算机可读存储介质 | |
CN110336669A (zh) | 一种信息的加密方法、装置及电子设备 | |
CN104899521A (zh) | 18位身份证号码漂白和反向漂白方法 | |
CN111984982B (zh) | 隐藏信息的方法、电子设备与计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 518000 2203/2204, Building 1, Huide Building, Beizhan Community, Minzhi Street, Longhua District, Shenzhen, Guangdong Patentee after: SHENZHEN AUDAQUE DATA TECHNOLOGY Ltd. Address before: 518057 Rooms 713, 715 and 716, 7/F, Software Building, No. 9, High-tech Middle Road, High-tech Zone, Nanshan District, Shenzhen, Guangdong Province Patentee before: SHENZHEN AUDAQUE DATA TECHNOLOGY Ltd. |