哈希表类Hashtable

2024-04-20 10:32
文章标签 哈希 hashtable 表类

本文主要是介绍哈希表类Hashtable,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在当今世界上,高技术产品充斥于人们工作的各个角落。这些产品从智能手机,基于语音的IP电话系统,闪存,到各种虚拟的在线世界,不一而足。并且随着越来越多的消费者开始习惯个性化的技术,使得各种新技术被很快的采用。

在最近由Yankee调查机构针对企业用户的一项调查中,500名受访者中的86%承认在工作场所的时候他们使用了不止一种这些设备和技术,既是为了创新也是为了生产效率。
然而,这一潮流给IT组织带来了很大的麻烦。首先,使用这些技术会增加安全漏洞的可能性。除此之外,用户还会期待IT产业提供相应的配件和服务,特别是他们在一个共同的环境下使用设备的时候。
但是在许多公司,如果单纯的禁止员工使用这些设备或是连接这些服务,那将有违公司文化。与此同时,公司也不能完全依靠相应的规章制度来约束员工保证公司的安全。
"对于IT部门来说IT消费品简直就是一个噩梦,要维护和解决这些问题将会迅速消耗IT资源,除非他们能够找出新的解决 方案来控制雇员的使用"Yankee的分析师Josh Holbrook说。Holbrook将禁止大众化技术( consumer technologies )在工作地点的使用等同于"一个永恒的打鼹鼠的游戏"。与此同时,他建议使用内部服务合作的模式来终止对终端用户的控制。
为了帮助企业如何做出相应,以下我们列出了8种在工作中比较流行的大众化技术,以及探讨企业如何在安全,生产效率以及良好的企业氛围中找到平衡点。
1. 实时通讯
员工几乎在所有的日常生活中都使用实时通讯,例如与同事及商业合作伙伴之间的通讯。据调查40%的受访者称他们在工作中经常使用实时通讯技术。实际上,实时通讯会导致一系列的安全问题。此外,恶意软件也会借外部实时通讯程序侵入企业内部网络,实时通讯用户也可能在不知情的情况下就通过不安全的网络将公司的敏感信息泄露出去。
对付这一威胁的一个方法就是逐步停止使用实时通讯服务而代之以内部实时通讯服务器。在2005年末的时候,Global Crossing公司就采用这一办法,他们在公司内部部署了微软的企业实时通讯服务器(LCS)。在2006年8月,他们就完全禁止了公司员工直接使用外部的实时通讯服务,包括,AOL,MSN 和Yahoo现在,所有的内部实时通讯的交换都经过了加密,并且外部的实时通讯交换也受到了保护,因为这些信息都要经过LCS服务器和微软的公共实时通讯服务器的过滤。
2. 网络邮件
在受访者中,50%的人说他们经常使用电子邮件用作商业目的。对于使用这些电子邮件应用程序的客户来说,问题就是,诸如Google, Microsoft, AOL 和Yahoo之类程序的安全问题他们并没有意识到,因为这些信息的传输是经过网络,并且是存储在服务提供商的服务器和电子邮件服务提供商的服务器上的。如果没有意识到这一问题,许多人在不作判断的情况下就使用电子邮件发送敏感账号,密码,机密的商业数据或是交易秘密。
一个提高网络邮件安全的方法就是使用关键词过滤工具来监控电子邮件以及其它的监控技术,还有在发现潜在的漏洞的时候发出警告或是直接禁止电子邮件的发送。
3. 可移动存储设备
IT管理人员最怕的一件事就是日益增长的各式各样的移动存储设备,从苹果公司的iPhone到各种移动存储设备。人们可以使用这些设备下载任何数量的机密信息和敏感数据然后将其大走,这不是IT管理人员所愿看到的信息的存在方式。
"仅在过去的三个星期,我就听了关于闪存和其它移动存储设备风险的6个不同的报告。"Mark Rhodes-Ousley,他是一名信息安全结构师,也是Network Security: The Complete Reference(网络安全:完全的参考)一书的作者。
尽管关闭员工的计算器上的USB接口是轻而易举的事情,许多安全管理人员认为这并不是一个值得推崇的解决 方案。那么你应该在哪些地方画上界线呢?如果你限制了USB端口,进入公司的移动电话上面也有数据存储的端口,那么你不得不考虑限制设备上的红外端口和CD刻盘机,这样限制就会越来越多。
处理这一问题的最好方法是教育雇员怎么样对待敏感数据的存储。实际上,大多数安全事故的发生都是无意的而不是恶意的,这就是为什么选择教育的原因,主要是关于适当操作及其重要性。
安全专家表示,最好的 方案就是在员工在使用USB或是其它的未经加密的存储媒介复制文件的时候,管理员发送一条信息告知这是违反公司规定的。
同时,密歇根州的大峡谷州立大学(Grand Valley State University)和其它一些大学的有丢失过带有敏感数据闪存的惨痛经历的教授和学生们也正努力研究密码的标准化问题--还有加密保护USB驱动在将来来保护他们自己。
4.掌上计算机和智能手机
越来越多的雇员开始在工作中使用各式各样的智能手机或是个人数据助理,可能是BlackBerry, Treo 或是 iPhone。但是当他们同步显示他们设备的日历的或是使用他们的个人计算机用电子邮件发送应用程序的时候,产生的问题可能包括程序短路以及蓝屏死机现像。
除此以外,要是员工辞职或是被解雇,他可以带走他想要的任何信息,只要他随身携带了掌上计算机或是智能手机。
一个规范化公司的IT部门将只会支持某一个品牌和型号的掌上计算机,从而将危险可能性降到最低限度。一些公司甚至在笔记本的使用上也建立了类似的标准,不得不承认笔记本的威胁比掌上计算机的威胁更大,因为它们可以存储更多的数据。
5.视频电话
一名医院的员工站在育婴室的门口,随意的与护士聊天。没有人注意在她的手上有一个小的掌上设备,她时不时的按下一个小按键。这不是经常在间谍电影里出现的情形吗?不,DeKalb's Finney领导的一个安全调查证实了这点。
"我做的一个实验就是把我的手机带到育婴室然后开始拍照,他们都不知道"她说。"我想下载这些照片,提高像素然后看一看我得到的照片--然后关于病人的信息展现在我的计算机屏幕上或是出现在我 办公室的桌子上。"
最后证明,她并没有得到任何关于个人的有效信息,但是从计算机屏幕中的信息她得到了关于计算机名称的信息(注意不是IP信息)。
"这类信息与从其它渠道得到的信息汇编在一起就可以形成一个攻击计划,"他警告说。
6.Skype或其它的基于语音的IP通话技术
另外一个大众化的技术就是Skype,是一种基于下载软件的免费英特网通话服务技术。实际上,有20%的受访者将这种技术运用于商业活动中。
在商业环境中,由于Skype或是类似技术导致的危险与下载到受到威胁的计算器上的大众化软件的风险是一样的。企业用应用程序升级很快并且很安全,而大众化的应用程序升级很少也不安全。因此在你每次下载Skype或是其它软件的时候,你实际上就是引狼入室。例如,这些软件会与计算器或网络上的任何应用程序绑定,潜在的就会影响应用程序的性能。
Skype最近就发布了安全漏洞的4个补丁,用户在下载最新版本的时候就可以安装。但是IT部门根本就不知道有多少用户安装了Skype,更不要说有多少人做了蠢事,根本就无法有效监管。
Gartner调查公司建议最安全的办法就是阻断所有Skype流量。Gartner还说,如果企业不这样做的话,他们可以使用相应的监管工具对Skype程序有选择性的控制并且保证只授权给相应的员工。
7.下载窗口小部件
根据Yankee调查,用户使用诸如Nokia E62的设备下载窗口小部件,这些小部件可以快速访问Web应用程序。根据Holbrook调查,这些窗口小部件很容易就进入了个人计算机,这样很快就侵入了IT部门苦心控制的系统环境。
除此之外,没有经过检查的软件下载也会存在潜在的风险,感染病毒的可能性不是很大,但是你有可能下载一些你不是太信任的软件。
8.虚拟化环境
商业用户开始在工作中使用虚拟环境。他们这样做,所以IT部门要开始关注与之相应的安全问题。Holbrook说,简单的关闭使用虚拟环境看起来似乎是不足的。
与此同时,在使用Second Life的时候,人们会下载大量的可执行代码然后就会在企业防火墙内部生根,这是Gartner公司最近的一份调查报告中公布的。此外,要想知道使用虚拟世界的人的真实身份很难。
Gartner的一个建议就是,在员工通过企业的无线网络使用虚拟世界或是在家里使用。第三个选择就是就是公司建立自己的虚拟网络世界并且就部署在企业内网的防火墙中。
摘自: 全球IP通信联盟-www.microvoip.com
欲了解更多有关IP通信的信息, 请访问: www.microvoip.com及子网站
统一呼叫中心 视频通信 即时通信 下一代通信
IMS fmc IPTV 统一沟通 wimax 通信展会展会 voip 通信
 

这篇关于哈希表类Hashtable的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/920011

相关文章

哈希leetcode-1

目录 1前言 2.例题  2.1两数之和 2.2判断是否互为字符重排 2.3存在重复元素1 2.4存在重复元素2 2.5字母异位词分组 1前言 哈希表主要是适合于快速查找某个元素(O(1)) 当我们要频繁的查找某个元素,第一哈希表O(1),第二,二分O(log n) 一般可以分为语言自带的容器哈希和用数组模拟的简易哈希。 最简单的比如数组模拟字符存储,只要开26个c

usaco 1.3 Prime Cryptarithm(简单哈希表暴搜剪枝)

思路: 1. 用一个 hash[ ] 数组存放输入的数字,令 hash[ tmp ]=1 。 2. 一个自定义函数 check( ) ,检查各位是否为输入的数字。 3. 暴搜。第一行数从 100到999,第二行数从 10到99。 4. 剪枝。 代码: /*ID: who jayLANG: C++TASK: crypt1*/#include<stdio.h>bool h

哈希表的底层实现(1)---C++版

目录 哈希表的基本原理 哈希表的优点 哈希表的缺点 应用场景 闭散列法 开散列法 开放定值法Open Addressing——线性探测的模拟实现 超大重点部分评析 链地址法Separate Chaining——哈希桶的模拟实现 哈希表(Hash Table)是一种数据结构,它通过将键(Key)映射到值(Value)的方式来实现快速的数据存储与查找。哈希表的核心概念是哈希

哈希表的封装和位图

文章目录 2 封装2.1 基础框架2.2 迭代器(1)2.3 迭代器(2) 3. 位图3.1 问题引入3.2 左移和右移?3.3 位图的实现3.4 位图的题目3.5 位图的应用 2 封装 2.1 基础框架 文章 有了前面map和set封装的经验,容易写出下面的代码 // UnorderedSet.h#pragma once#include "HashTable.h"

【408数据结构】散列 (哈希)知识点集合复习考点题目

苏泽  “弃工从研”的路上很孤独,于是我记下了些许笔记相伴,希望能够帮助到大家    知识点 1. 散列查找 散列查找是一种高效的查找方法,它通过散列函数将关键字映射到数组的一个位置,从而实现快速查找。这种方法的时间复杂度平均为(

PHP: 深入了解一致性哈希

前言 随着memcache、redis以及其它一些内存K/V数据库的流行,一致性哈希也越来越被开发者所了解。因为这些内存K/V数据库大多不提供分布式支持(本文以redis为例),所以如果要提供多台redis server来提供服务的话,就需要解决如何将数据分散到redis server,并且在增减redis server时如何最大化的不令数据重新分布,这将是本文讨论的范畴。 取模算法 取模运

哈希表题总结

哈希表题总结 hot100两数之和字母异位词分组最长连续序列 hot100 两数之和 题目链接: 1.两数之和 代码: class Solution {public int[] twoSum(int[] nums, int target) {Map<Integer,Integer> map = new HashMap<>();int n = nums.length;for

【吊打面试官系列-Redis面试题】说说 Redis 哈希槽的概念?

大家好,我是锋哥。今天分享关于 【说说 Redis 哈希槽的概念?】面试题,希望对大家有帮助; 说说 Redis 哈希槽的概念? Redis 集群没有使用一致性 hash,而是引入了哈希槽的概念,Redis 集群有 16384 个哈希槽,每个 key 通过 CRC16 校验后对 16384 取模来决定放置哪个槽, 集群的每个节点负责一部分 hash 槽。

LeetCode:3177. 求出最长好子序列 II 哈希表+动态规划实现n*k时间复杂度

3177. 求出最长好子序列 II 题目链接 题目描述 给你一个整数数组 nums 和一个非负整数k 。如果一个整数序列 seq 满足在下标范围 [0, seq.length - 2] 中 最多只有 k 个下标i满足 seq[i] != seq[i + 1] ,那么我们称这个整数序列为好序列。请你返回 nums中好子序列的最长长度。 实例1: 输入:nums = [1,2,1,1,3],

【哈希表】深入理解哈希表

目录 1、哈希表简介2、哈希函数2.1、概念2.2、常用的哈希函数2.2.1、直接定址法2.2.2、除留余数法2.2.3、平方取中法2.2.4、基数转换法 3、哈希冲突3.1、概念3.2、开放地址法【闭散列:key存放到冲突位置的“下一个”空位置】3.3、链地址法【开散列:冲突位置变为链表】3.4、开散列下冲突严重时(导致链表过长)的优化3.4.1、整个哈希表进行扩容3.4.2、单个链表转