Python安全应用程序开发方法研究

(整期优先)网络出版时间:2022-09-22
/ 2

Python安全应用程序开发方法研究

孙博阳

黑龙江农业职业技术学院 154007

摘要:由于Python语言具有多种其他计算机语言不具备的独特优势,其在安全应用程序开发过程中具有较高的应用价值,因此,将该语言应用于安全应用程序开发活动中是安全应用程序发展的必然需要。而在实际开发活动中,Python语言的应用仍有一定限制,正因如此,本文针对其开发方法加以研究,探讨Python语言的应用思路,以期探寻一条具备可行性的开发路径。

关键词:Python;安全应用程序;开发方法;

引言:Python语言作为自诞生之初,就因其简洁、易读等优势而备受技术人员的关注,为切实提高Python语言的应用效果,国内外研究学者开展了多项研究,并切实取得了一定的研究成果。但根据本文对现有研究文献的梳理与分析发现,目前我国研究学者尚未有针对基于Python语言的安全应用程序的研究,基于此,本文的研究视角具有一定创新意义,针对开发方法的研究也可以为相关研究提供一条新的研究思路。

一、Python安全应用程序分类

Python安全应用程序并不仅仅有一种,根据其安全防护需求的不同,Python安全应用程序可以被划分为五种类型,而深入了解其不同类型以及其不同类型安全应用程序的功能需求是研究其开发方法的基础。具体而言,Python安全应用程序包括以下几种类型:

第一,机密性应用程序。机密性应用程序的主要作用是为信息或系统加密,通过加密保护的方式使信息和系统避免被恶意入侵者攻击。常见的机密性应用程序包括密码应用、数字水印等等[1]。该应用程序处于安全防护系统最内核的部分,其需要较高的权限才能对其加以访问和控制。

第二,完整性应用程序。完整性应用程序保护下的数据暴露在开放环境下,其对访问权限的要求不高,无须使用内核级的访问权限来对其进行保护。而常见的完整性应用程序包括数字签名类型的密码应用、易碎型的数字水印等等。

第三,可用性应用程序。所谓可用性安全应用程序,其主要目的是为保证系统核心的可用性,避免系统核心因外部攻击而瘫痪,同时也可以对系统进行实时保护,避免互联网中游离病毒对系统的伤害。常见的可用性应用程序包括网络扫描、病毒防护、主机管理等等。

第四,不可抵赖性应用程序。不可抵赖性又称不可否认性,是指信息具有独特的特质,其不可被复制,可以有效避免恶意攻击者通过复制信息的方式侵入系统核心。因此,不可抵赖性应用程序的重心主要放在对用户信息和访问信息的识别上,其对核心数据的保护力度很高,同时也不需要使用内核权限。常见的不可抵赖性应用程序包括网络安全取证、区块链等等。

第五,可控性应用程序。可控性应用程序的使用极为广泛,其中最常见的可控性安全应用程序就是防火墙,其对底层数据的保护需要使用到内核权限。

在系统保护活动中,上述五种安全应用程序并不是严格独立的,在具体的实践中,五种安全应用程序通常是交叉使用的,以保证其安全防护成效。

二、Python安全应用程序开发思路

(一)密码应用

针对密码应用安全应用程序,Python语言对其有很强的适用性,当前使用的所有的密码算法,都可以通过Python语言来实现。而目前比较常见的Python应用程序开发思路主要有三种:

第一,利用pyDes模块来提供DES加密。

第二,通过Crypto.PublicKey.RSA和RSA模块来生成公匙和私匙,再通过公匙和私匙的对照来为系统数据进行密码加密。

第三,通过Hashlib模块来为常见的MD5、SHA1等摘要算法提供加密空间。

(二)数字水印

数字水印主要是通过在信息上加设数字水印来使信息具有不可复制性,从而避免信息数据被盗用。而Python语言可以通过对图像进行变换处理来为数据信息提供水印保护。比较常见的数字水印开发思路如下:

第一,通过CV2模块来对LSB位平面数据进行替换,以达到增设数字水印的效果。

第二,利用CV2模块来实现DCT算法和DWT算法,从而达到在数据信息中嵌入数字水印的效果。

(三)渗透测试

在研究渗透测试思路之前,我们首先需要对渗透测试技术具有一定了解。所谓渗透测试,就是利用恶意攻击者的攻击手段对系统的安全防护手段进行测试,以判断其防渗透能力,并找到防护程序的缺陷与问题,以对其进行有效优化。而Python语言之所以可以被应用在渗透测试之中,就是因为Python语言是恶意攻击者最常使用的计算机语言,其通常会使用该语言编写病毒或攻击程序,因此基于Python的渗透测试也成了重要的安全应用程序之一[2]。具体而言,技术人员可以通过Python语言来操控Metasploit框架,以对系统进行有效的渗透测试。

(四)识别与认知

Python语言具备很多密码学性能,而密码学常被应用在身份信息的识别方面,因此,Python语言也可以被应用在系统的识别与认知程序上。Python语言已经可以实现对人脸和人声的自动化识别,如通过Face Recognition模块来进行人脸识别,通过sidekit模块来进行人声识别等等。

(五)安全取证

技术人员可以利用Python语言来编写网络嗅探模式安全应用程序,进而捕获网络数据包,通过对网络数据包的处理与分析,就可以实现对系统信息的安全取证。

(六)内容安全

内容安全应用程序的主要任务是屏蔽危害系统安全及违反国家法律的文本、图片、影音等不良信息,而Python语言在处理文本信息上具有特殊优势,其可以基于自然语言对文本信息进行有效过滤,相较于其他程序而言,Python语言编写的内容安全程序对文本信息的过滤与处理要更为自然,基本不会改变文本信息的本来含义。基于Python的内容安全应用程序的设计思路主要是通过NLTK、Gensim等工具包来对语言和语义进行分析,以实现对文本信息的有效过滤。
结论:综上所述,基于Python的安全应用程序种类有很多,不同种类的安全应用程序有不同的应用价值和应用优势,因此,为给系统提供全面保护,技术人员需要综合应用多种类的安全应用程序,并做好对不同程序的串联,实现系统化的安全应用程序体系的建设,以为系统提供全面保护。基于此,本文就常见的Python安全应用程序如密码应用程序、数字水印程序、内容安全程序等加以分析,并提出具体的设计与开发思路,以期为相关研究和实践活动提供一定理论参考。
参考文献:

[1]尚博.Python在网络空间安全中的应用[J].电子技术,2022,51(07):40-41.

[2]卢绍兵.基于Python的混合语言编程及其实现研究[J].科技资讯,2022,20(14):31-33.DOI:10.16661/j.cnki.1672-3791.2201-5042-7709.