安全技术在计算机软件开发中的应用

2021-11-28 11:25朱冰
中国科技纵横 2021年19期
关键词:加密技术计算机软件计算机

朱冰

(上海交通大学,上海 200003)

0.引言

计算机网络信息化时代的到来在一定程度上改变了人们的生活学习和工作方式,促进了社会生产力的提升,并为人类带来更多的价值。使用计算机网络的时候可以不受时间地域限制,当中包含大量繁杂信息数据和功能,有着共享性也将在很大程度上包含着隐患问题。

1.安全技术应用目的

安全技术在计算机软件开发当中是不可或缺的一部分,它的出现最初是为了解决一些人为干预问题,在应用的过程中安全保护能够从根本上解决病毒木马等侵袭,并能降低人为恶意攻击的情况,如此一来便能有效降低计算机使用过程中受到恶意攻击概率。如果计算机中的信息数据被盗取或者受到恶意攻击和病毒问题都能引起计算机的正常使用。所以说相关行业对计算机软件开发的过程中有必要科学使用安全技术,建立在网络功能基础上确保计算机能够稳定运行下去。

2.计算机软件开发中存在的安全问题

2.1 参与软件设计和开发的人员,没有接受有效的安全知识培训

一个简单的软件开发流程包括需求分析、产品设计、开发和测试。由于当前具有安全技术和知识背景的设计和开发人员非常短缺,导致多数软件的开发中,很多参与人员以及工程师,没有足够的掌握安全知识,最终导致开发的软件漏洞百出。安全培训的重点是提高全体项目人员的安全意识,包括产品经理、设计和研发、测试人员的代码安全意识。

2.2 没有有效的软件权限管理

权限管理通常由最基本的两个方面组成,一个是本身软件运行的时候,所需要申请的执行权限,通常在安全设计中,要遵循最低的权限规则(Principle of least privilege),也就是说一个软件要完成某项任务,如果只需要普通权限就可以做到,那么就不要请求高权限(比如超级用户或者管理员权限)来执行操作。软件开发的过程中,一个常见的错误,就是为了开发方便,一律使用最高的权限,这常常导致,如果软件出现漏洞时,黑客或者攻击者也能够获得最高的权限,因此破坏性也更大。

另一个方面常常出现安全问题的地方是,很多软件没有对用户的权限做出严格的基于身份认证的权限分级。这样的错误,也会导致一个普通的用户,有可能被赋予过高的操作权限,比如对某些受限的计算机资源(如信用卡数据)进行读取和修改。这样一旦该用户被攻击,或者其身份信息被攻击者获取,那么破坏性也会变大。

2.3 安全设计理念落后

随着计算机技术的发展,黑客或者攻击者的技术水平也是在不断的提高,因此,作为软件的设计或者开发着,也要时刻关注最新的安全设计理念的运用。比如说,随着计算机性能的不断提高,以及量子计算机的研究并运用,导致以前非常安全的密码算法,很容易会被轻松的破解,因此在这种情况下,如果软件中要对关键敏感的数据进行加密保护的时候,就要使用通过中国国密认证或者美国NIST (National Institute of Standards and Technology)推荐的加密或者签名算法,同时要提高密钥的长度(比如对称加密算法密钥长度要提高到256bit以上)。一个常见的错误,就是使用了落后的算法,或者自己团队开发的、自认为很安全的密码算法,有的甚至把密码的密钥内容直接放在程序代码中,这些都能导致攻击者轻易的破解软件,并解密受保护数据。

还有一些错误,就是软件缺乏有效的现代软件升级以及管理技术。因为任何软件都不可避免的在使用中会出现漏洞,因此,如果高效快速的升级、修复漏洞,也是衡量软件安全的一个重要因素。

3.安全技术在计算机软件开发中的应用

针对上面的内容,增加相关的安全培训 (项目中可开展针对性的培训,例如代码中经常出现的问题、测试过程中多次出现的漏洞等都可以作为培训的重点),以及应用最新的安全设计理念。

3.1 入侵检测

入侵检测作为一种安全技术,它被运用于计算机系统中是安全稳定的保障,一旦计算机系统遭到攻击,入侵检测技术能最快时间展开分析识别,对攻击自己的目标追踪,最后的结果在利用手段将其处理。结合入侵检测技术对计算机运行的系统和网络全面检测属于基础性保障,可有效解决计算机中存在的一些问题。入侵检测技术本身就综合了许多先进技术,应用的时候又融合了人工智能,整个计算机系统都能及时检测,一旦有异常现象发生,就会优先保护用户信息资金安全。除此之外,这项技术应用到其他方面对于计算机主机来说能对信息自动化识别,系统中的数据也会定期展开检查,达到实时保护效果,计算机网络当中这项技术也能对信息的传输展开安全保护[1]。

3.2 加密

加密技术对于计算机软件的开发也非常重要,属于安全防范功能之一,合理使用加密技术能够将重要的数据信息提供给开发者并进行隐藏保护处理,能进一步避免信息损失。合理使用加密技术属于计算机软件系统双层保护,无论是病毒黑客还是木马攻击计算机系统的时候会降低泄漏率,并减少风险问题发生,从而保全用户利益。除此之外,结合用户的多元化需求通过加密技术展开保护让他们的隐私不受侵犯,例如,对加密文件传输的过程中进行加密处理,可抵挡病毒木马侵犯,也能让计算机程序时刻处于安全环境下运行。

3.3 病毒查杀

计算机网络中的病毒类型非常多,他们的特点是传染性强且危害大,一般无法识别出来,要是计算机网络和系统受到病毒攻击的话,计算机会形成漏洞或者资源损失现象,所以有必要采用病毒防范技术。它除了能防止病毒滋生以外,还能对病毒全面清除,计算机软件开发工作中必须先行设计防病毒防范系统,运行的同时把它开启,全面净化病毒,尤其是潜在的那些被以最快的时间隔挡,检测出来要立即清除。工作人员操作当中把病毒的感染特征全面分析,计算出计算机程序中是否还有病毒或者什么类型的,最终将其解决以后记录下来,结合大数据技术发挥好病毒防范技术在计算机软件开发中的作用。

3.4 安全认证

安全认证技术建立在模块化理念基础上,把计算机软件系统改善,能有效促进网络程序安全,他按照硬件驱动、操作、应用等系统结合。包括硬件驱动的程序就是计算机外接设备运行状态的控制,这样就能保证信息数据能传输到计算机软件内部,操作系统是设备和各种移动终端设备连接组合而成,运用一些先进的技术。

4.总结

要想让计算机软件顺利完成开发,并保障安全有效性,就必须让其中的计算机辅助网络系统保持安全和稳定,采用多种安全技术对系统全方位保护,及时排除隐患,更新技术类型,最大化保障用户利益不受任何损失。

猜你喜欢
加密技术计算机软件计算机
海洋水文信息加密技术方案设计与测试
计算机操作系统
基于计算机自然语言处理的机器翻译技术应用与简介
数据加密技术在计算机网络通信安全中的应用
基于C语言的计算机软件编程
浅谈不同编程语言对计算机软件开发的影响
信息系统审计中计算机审计的应用
浅谈基于C语言的计算机软件程序设计
在计算机网络安全中数据加密技术的应用
基于四叉树网格加密技术的混凝土细观模型