CN112261600B - 短信内容快速匹配方法及基于内容的短信拦截方法 - Google Patents
短信内容快速匹配方法及基于内容的短信拦截方法 Download PDFInfo
- Publication number
- CN112261600B CN112261600B CN202011523655.9A CN202011523655A CN112261600B CN 112261600 B CN112261600 B CN 112261600B CN 202011523655 A CN202011523655 A CN 202011523655A CN 112261600 B CN112261600 B CN 112261600B
- Authority
- CN
- China
- Prior art keywords
- short message
- sent
- content
- short
- sending
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
- H04W4/14—Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
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)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种短信内容快速匹配方法及基于内容的短信拦截方法,属于智能数据的技术领域。短信内容快速匹配方法为计算待发送短信内容长度,选择数据库中同长度的短信内容进行匹配,大幅缩小短信匹配的范围。选取待发送短信和数据库中的短信的特征码进行匹配,经过优化化的短信特征码相当于原短信长度的20%左右,节约80%的行业短信匹配时间。以字符串长度值这索引,建立行业短信内容匹配库。行业短信内容匹配库建立自动删除机制,抑制行业短信匹配库无限制鼓胀。短信拦截方法包括允许发送量和发送率,超出的短信经过短信内容匹配,判定为同一内容短信大量发送,则拦截。本发明,实现短信净化,避免垃圾短信大量转发,造成恶劣影响。
Description
技术领域
本发明涉及一种短信内容快速匹配方法及基于内容的短信拦截方法,属于智能数据的技术领域。
背景技术
为了防止相同内容的短信被大范围发送,提出了在短信发送端,检测短信内容的想法,目前常用的办法是进行短信内容比较,在不进行任何算法优化情况下,进行行业短信发送完全匹配并计数,会出现以下两种情况:
1) 每发送一条不同内容的短信,匹配表增加一条记录,因此字符串匹配表将急速增长。单条短信最大容量为144个字符,一个中文汉字为2个字符,以一条短信平均50个汉字计算,则一条短信匹配内容为100个字节。以平均10万条短信匹配量计算,则匹配库仅字符串需占用 100*10*10000 =10000000字节,相当于10M字节开销,影响系统存储空间。
2) 需进行完全匹配的内容急速增加,系统性能消耗也将呈指数级增长,严重影响短信发送的及时性,甚至引发系统崩溃。
可见,针对行业的需要,以及现状的窘迫,亟待寻求到一种能够占用极少内存,高效快捷地检测短信内容的方法。
发明内容
为了解决上述技术问题,本发明提供一种短信内容快速匹配方法及基于内容的短信拦截方法,其具体技术方案如下:
短信内容快速匹配方法,包括以下步骤:
步骤1:短信数据库:以每次发送短信的内容为单元,建立短信数据库,
步骤2:长度匹配:计算待发送短信内容长度,选择短信数据库中同长度的短信,
步骤3:短信特征码匹配:从待发送短信内容中指定位置选取字符串,顺序组合成特征码,从步骤2选中的短信内容中,与待发送短信内容相同的位置提取字符串,顺序组合成特征码,比较待发送短信的特征码与步骤2选中短信的特征码是否一致,若是,则判定待发送短信存在于短信数据库中,待发送短信不增加到短信数据库,若不一致,则判定待发送短信不存在于短信数据库中,且将该待发送的短信存储于数据库中。
短信内容快速匹配方法,包括以下步骤:
步骤(1):短信数据库:以每次发送短信的内容为单元,建立短信数据库,
步骤(2):短信特征码库:提取步骤(1)中的短信数据库中的各个短信的特征码,形成特征码集;
步骤(3):提取待发送的短信的特征码;
步骤(4):将待发送短信的特征码与步骤(2)得到的特征码集首先进行长度检索,如特征码集中不存在长度一致的特征码,则判定为待发送短信不存在于短信数据库中,否则进入步骤(5);
步骤(5):将待发送短信的特征码和与其长度一致的特征码集中的特征码比对,若存在相同的特征码,则判定待发送短信存在于短信数据库中,若不存在,则判定待发送短信不存在于短信数据库中,且将待发送短信的特征码添加到特征码集中。
进一步的,所述特征码的提取方法为:将将短信内容转换成字符串,顺序排列,在短信内容转换成的字符串中以2的幂次方作为提取位置,提取字符组成特征字符串1,为了增加匹配精度,在短信内容转换成的字符串尾部增加一个以上字符,由于一般语句尾部为句号或括号,因此选倒数第N个字符,作为特征字符串2,其中N>2,特征字符串1和特征字符串2形成特征码。
基于内容的短信拦截方法,具体包括以下步骤:
步骤一:判断短信内容:按照权利要求3所述的短信内容快速匹配方法,判断待发送短信内容是否为存在于短信数据库中的短信内容,若不存在,则直接发送,并添加到短信数据库,并记录发送次数,若存在,则进入步骤二;
步骤三:判断待发送短信累计发送频率Sfc是否小于等于同一内容短信无条件允许发送频率Psfc,无条件允许发送频率Psfc为单位时间内,允许发送同一内容短信的最多条数,公式表示为:,Ct表示发送短信的当前时间,Bt表示计数起始时间,若是,则发送短信,并记录短信发送次数,否则,拒绝发送,并记录该同一内容短信被检索匹配成功的次数。
进一步的,所述步骤三中,待发送短信当前发送频率Sfc检测中,累计发送量Tnc按照如下判定方法清除:
进一步的,所述静默最长时间Qmt表示设置的清除累计发送量Tnc的时间周期;所述同一内容短信允许频率安全值Psfc表示允许同一内容在单位时间内发送的最大次数。
进一步的,所述短信发送过程中存储的字段包括字符特征码、累计发送数量、起始时间和最后一次发送的时间,索引字符特征码,所述字段被访问及修改的频率高,但留存价值较低,因此存储于内存。
本发明的有益效果是:
数量庞大的短信数据量,逐一比对短信内容,工作量极其庞大,且占用巨大的内存和存储空间,时效性很差,使得短信发送不及时,本发明提出抽取短信特征码的概念,在短信内容中按照设定的规律,抽取出部分字符,组成特征码,首先比对特征码长度或者短信内容的字符串长度,在长度一致的前提下,进一步比对特征码内容,若特征码内容一致,则判定为相同内容的短信,大大缩短了比对时间,确保了短信发送或屏蔽的即时反馈,提升用户体验感。
附图说明
图1是本发明实施例1的短信内容匹配方法流程图,
图2是本发明实施例2的短信内容匹配方法流程图,
图3是本发明的短信发送的流程图。
具体实施方式
现在结合具体实施方式对本发明作进一步详细的说明。
本发明短信内容匹配方法有两个实施例,分别参见图1和2。
实施例1:参见图1,本发明短信内容匹配的方法,具体为:
优先长度匹配,计算待发送短信内容长度(速度极快),选择库中同长度的短信内容进行匹配,大幅缩小短信匹配的范围。
应用短信特征码进行匹配,经过优化化的短信特征码相当于原短信长度的20%左右,节约80%的行业短信匹配时间。
以字符串长度值索引,建立行业短信内容匹配库。
行业短信内容匹配库建立自动删除机制,抑制行业短信匹配库无限制鼓胀。
实施2:参加图2,本发明短信内容匹配的方法,具体为:待发送短信首先生成特征码,用同样的方式将短信数据库中的短信均生成特征码,形成短信特征码集,然后用待发送短信特征码在特征码集中寻找长度一致的特征码,然后比对长度一致的特征码,比对特征码内容是否一致。
该方法也较传统方法大大缩短了比对的时效和准确度。
短信内容特征码提取有两种方式:
第一种,通过复杂的运算得出一串全新的字符串,比如HD5编码,该方法适用于超长字符内容,如视频、超大文件等,该种方法应用在内容匹配过程的特点是,运作复杂,匹配精度高,匹配速度较快,比较适用于超大文件下载较难、网盘同类文件存储等。
第二种,指通过算法提取短信内容字符串中部分,减少匹配长度,提高效率。优点是特征码生成速度快,匹配速度快,但精度较差。
由于只是对匹配内容进行计数,对频率过高进行抑制,因此精度要求较低,采用第二种方法。
以2的幂次方作为提取位置,提取字符组成字符串,形成特征码,具体如下表1所示:
表1
分别提取位置(上表1中黑色阴影位置):
合计提取,1,2,4,8,16,32,64,7个位置。
为了增加匹配精度,在字符串尾部增加一个字符,由于一般语句尾部为句号或括号,因此可选倒数第3个字符为最佳。在上表1中为第98个字符(上表1中加精黑边框中)。
则:内容特征码为 1,2,4,8,16,32,64,98。
表2
上表2可以得出,采用短信内容特征码将节约系统开销为60%~95%之间。
同一内容短信发送的允许通过条件(参见图3)
待发送短信累计发送量 ( Total Send Number ),简写:Tnc,
同一内容短信无条件允许发送量 ( Permit Send Number ),简写: Pnc,
计数起始时间 (Begin Send Time),简写:Bt,
当前发送时间 ( Current Time ),简写: Ct,
最后一次发送时间 ( Last Send Time ),简写:Lst,
待发送短信累计发送频率(Send Frequency),简写: Sfc,
静默最长时间( Quiet Maximum Time),简写: Qmt,
同一内容短信无条件允许发送频率( Permit Safe Frequency),简写:Psfc,
单位时间允许同内容发送最大条数 ( Average Maximum Permit Send item),简写 :Amic,
结果 :满足上述1)或2)便发送,都不满足,则拒绝发送,图3中的YES表示允许继续发送,NO表示拒绝发送。
为了防止同一内容短信一次性大批量发送,要判断是否超限,对于经过短信内容检测后的短信,设置一次只能发送50条~500条,短信平台自行设置。
计算器清除机制
如果没有计算器清退机制,随着短信发送条数海量增长,内容匹配数据库也将同步增长,相应的检索时效,匹配时效也将大幅增长,影响系统效率。
清除规则为
当两者同为真时,则清除该号码对应的计数器,否则保留。系统以小时为单位定期检测。
数据存储结构及方式
数据存储格式及方式
该检索数据访问频率极高,但留存价值较低,因此该匹配数据表存储于内存中。同时考虑检索效率及调用方式,采用成熟的内存数据库进行存储,如Redis、Memcache、ApacheIngite等。存储记录包含的字段如表3:
表3
以上述依据本发明的理想实施例为启示,通过上述的说明内容,相关工作人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。
Claims (2)
1.基于内容的短信拦截方法,其特征在于:具体包括以下步骤:
步骤一:判断短信内容:通过短信内容快速匹配方法,判断待发送短信内容是否为存在于短信数据库中的短信内容,若不存在,则直接发送,并添加到短信数据库,并记录发送次数,若存在,则进入步骤二;
所述短信内容快速匹配方法包括两种实现方法,具体为:
第一种实现短信内容快速匹配方法为:
步骤1:建立短信数据库:以每次发送短信的内容为单元,建立短信数据库,
步骤2:长度匹配:计算待发送短信内容长度,选择短信数据库中同长度的短信,
步骤3:短信特征码匹配:从待发送短信内容中指定位置选取待发送短信字符串,顺序组合成待发送短信特征码,从步骤2选中的短信内容中,与待发送短信内容相同的位置提取库中短信字符串,顺序组合成库中短信特征码,比较待发送短信的特征码与步骤2选中短信的特征码是否一致,若是,则判定待发送短信存在于短信数据库中,待发送短信不增加到短信数据库,若不一致,则判定待发送短信不存在于短信数据库中,且将该待发送的短信存储于数据库中;
第二种实现短信内容快速匹配方法为:
步骤(1):建立短信数据库:以每次发送短信的内容为单元,建立短信数据库,
步骤(2):建立短信特征码库:提取步骤(1)中的短信数据库中的各个短信的特征码,形成特征码集;
步骤(3):提取待发送的短信的特征码;
步骤(4):将待发送短信的特征码与步骤(2)得到的特征码集首先进行长度检索,如特征码集中不存在长度一致的特征码,则判定为待发送短信不存在于短信数据库中,将该待发送的短信存储于数据库中,否则进入步骤(5);
步骤(5):将待发送短信的特征码和与其长度一致的特征码集中的特征码逐个比对,若存在相同的特征码,则判定待发送短信存在于短信数据库中,若不存在,则判定待发送短信不存在于短信数据库中,且将待发送短信的特征码添加到特征码集中;
所述实现短信内容快速匹配方法中的特征码的提取方法为:将短信内容转换成字符串,顺序排列,在短信内容转换成的字符串中以2的幂次方作为提取位置,提取字符组成特征字符串1,在短信内容转换成的字符串尾部增加一个以上字符,选倒数第N个字符,作为特征字符串2,其中N>2,特征字符串1和特征字符串2形成特征码,
步骤三:判断待发送短信累计发送频率Sfc是否小于等于同一内容短信无条件允许发送频率Psfc,无条件允许发送频率Psfc为单位时间内允许发送同一内容短信的最多条数,公式表示为:,Ct表示发送短信的当前时间,Bt表示计数起始时间,若是,则发送短信,并记录短信发送次数,否则,拒绝发送,并记录该同一内容短信被检索匹配成功的次数;
待发送短信当前发送频率Sfc检测中,累计发送量Tnc按照如下判定方法清除:
步骤(a):判断同一内容短信最后一次发送时间Lst至当前发送时间Ct的时长是否大于静默最长时间Qmt,所述静默最长时间Qmt表示设置的清除累计发送量Tnc的时间周期;若是,则进入步骤(b),若否,则保留累计发送量;
2.根据权利要求1所述的基于内容的短信拦截方法,其特征在于:所述短信发送过程中存储的字段包括字符特征码、累计发送数量、起始时间和最后一次发送的时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011523655.9A CN112261600B (zh) | 2020-12-22 | 2020-12-22 | 短信内容快速匹配方法及基于内容的短信拦截方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011523655.9A CN112261600B (zh) | 2020-12-22 | 2020-12-22 | 短信内容快速匹配方法及基于内容的短信拦截方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112261600A CN112261600A (zh) | 2021-01-22 |
CN112261600B true CN112261600B (zh) | 2021-08-13 |
Family
ID=74225207
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011523655.9A Active CN112261600B (zh) | 2020-12-22 | 2020-12-22 | 短信内容快速匹配方法及基于内容的短信拦截方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112261600B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101304589A (zh) * | 2008-04-14 | 2008-11-12 | 中国联合通信有限公司 | 利用短信网关发送垃圾短信的监控与过滤方法及系统 |
CN101790142A (zh) * | 2010-03-11 | 2010-07-28 | 上海粱江通信系统股份有限公司 | 结合短信内容和发送频次识别垃圾短信源的系统与方法 |
CN101930458A (zh) * | 2010-08-18 | 2010-12-29 | 杭州东信北邮信息技术有限公司 | 一种基于特征值的短信匹配方法 |
CN109525951A (zh) * | 2018-12-03 | 2019-03-26 | 中国联合网络通信集团有限公司 | 垃圾短信处理方法、装置及设备 |
CN109922444A (zh) * | 2017-12-13 | 2019-06-21 | 中国移动通信集团公司 | 一种垃圾短信识别方法及装置 |
CN111259207A (zh) * | 2018-11-30 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 短信的识别方法、装置及设备 |
-
2020
- 2020-12-22 CN CN202011523655.9A patent/CN112261600B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101304589A (zh) * | 2008-04-14 | 2008-11-12 | 中国联合通信有限公司 | 利用短信网关发送垃圾短信的监控与过滤方法及系统 |
CN101790142A (zh) * | 2010-03-11 | 2010-07-28 | 上海粱江通信系统股份有限公司 | 结合短信内容和发送频次识别垃圾短信源的系统与方法 |
CN101930458A (zh) * | 2010-08-18 | 2010-12-29 | 杭州东信北邮信息技术有限公司 | 一种基于特征值的短信匹配方法 |
CN109922444A (zh) * | 2017-12-13 | 2019-06-21 | 中国移动通信集团公司 | 一种垃圾短信识别方法及装置 |
CN111259207A (zh) * | 2018-11-30 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 短信的识别方法、装置及设备 |
CN109525951A (zh) * | 2018-12-03 | 2019-03-26 | 中国联合网络通信集团有限公司 | 垃圾短信处理方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112261600A (zh) | 2021-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10652265B2 (en) | Method and apparatus for network forensics compression and storage | |
US5414650A (en) | Parsing information onto packets using context-insensitive parsing rules based on packet characteristics | |
CN101795267B (zh) | 病毒检测方法、装置和网关设备 | |
CN100452055C (zh) | 一种用于文本或网络内容分析的大规模多关键词匹配方法 | |
JPH0855008A (ja) | システム生成辞書を用いたデータ圧縮のための方法及びシステム | |
US20120310630A1 (en) | Tokenization platform | |
CN103020521B (zh) | 木马扫描方法及系统 | |
KR20140051914A (ko) | 규칙적 표현들에 대한 컴파일러 | |
CN116594572B (zh) | 浮点数流式数据压缩方法、装置、计算机设备及介质 | |
WO2013097812A1 (zh) | 一种下载字库文件的方法和系统 | |
CN112261600B (zh) | 短信内容快速匹配方法及基于内容的短信拦截方法 | |
CN112434085B (zh) | 基于Roaring Bitmap的用户数据统计方法 | |
CN102693315A (zh) | 一种基于共享内存映射的url去重方法及装置 | |
CN102073682B (zh) | 一种基于编码方式的文档数据恢复系统及其快速恢复方法 | |
CN106599326B (zh) | 一种云化架构下的记录数据剔重处理方法及系统 | |
CN109359481B (zh) | 一种基于bk树的反碰撞搜索约减方法 | |
CN111858481A (zh) | 一种分布式文件系统热度统计方法、装置 | |
CN115473734B (zh) | 基于单分类和联邦学习的远程代码执行攻击检测方法 | |
CN112714447A (zh) | 基于手机号码和短信内容双模检测的平台短信净化方法 | |
CN115618809A (zh) | 基于二元字符频次的字符分组方法及安全字库构建方法 | |
CN112149416B (zh) | 一种在分布式学术数据仓库中检测热点学术研究话题的方法 | |
CN110825940A (zh) | 网络数据包存储和查询方法 | |
CN112527949B (zh) | 数据存储与检索方法、装置、计算机设备及存储介质 | |
CN115454983B (zh) | 一种基于布隆过滤器的海量Hbase数据去重方法 | |
CN114490525B (zh) | 基于hadoop远程超大非结构化文本文件解析出入库系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |