当前位置:首页 » 密码管理 » 密钥交换密码是什么

密钥交换密码是什么

发布时间: 2023-04-02 06:12:07

⑴ 密码技术(十一)之密钥

  ——秘密的精华

 在使用对称密码、公钥密码、消息认证码、数字签名等密码技术使用,都需要一个称为 密钥 的巨大数字。然而,数字本身的大小并不重要,重要的是 密钥空间的大小 ,也就是可能出现的密钥的总数量,因为密钥空间越大,进行暴力破解就越困难。密钥空间的大小是由 密钥长度 决定的。

 对称密码DES的密钥的实质长度为56比特(7个字节)。
例如,
一个DES密钥用二进制可以表示为:
01010001 11101100 01001011 00010010 00111101 01000010 00000011
用十六进制则可以表示为:
51 EC 4B 12 3D 42 03
而用十进制则可以表示为:
2305928028626269955

 在对称密码三重DES中,包括使用两个DES密钥的DES-EDE2和使用三个DES密钥的DES-EDE3这两种方式。
DES-EDE2的密钥长度实质长度为112比特(14字节),比如:
51 EC 4B 12 3D 42 03 30 04 D8 98 95 93 3F
DES-EDE3的密钥的实质长度为168比特(21字节),比如:
51 EC 4B 12 3D 42 03 30 04 D8 98 95 93 3F 24 9F 61 2A 2F D9 96

 对称密码AES的密钥长度可以从128、192和256比特中进行选择,当密钥长度为256比特时,比如:
51 EC 4B 12 3D 42 03 30 04 D8 98 95 93 3F 24 9F 61 2A 2F D9 96
B9 42 DC FD A0 AE F4 5D 60 51 F1

密钥和明文是等价的 。假设明文具有100万的价值,那么用来加密这段明文的密钥也就是具有100万元的价值;如果明文值1亿元,密钥也就值1亿元;如果明文的内容是生死攸关的,那么密钥也同样是生死攸关的。

 在对称密码中,加密和解密使用同一个密钥。由于发送者和接收者需要共享密钥,因此对称密码又称为共享密钥密码。对称密码中所使用的密钥必须对发送者和接收者以外的人保密,否则第三方就能够解密了。

 在消息认证码中,发送者和接收者使用共享的密钥来进行认证。消息认证码只能由持有合法密钥的人计算出来。将消息认证码附加在通信报文后面,就可以识别通信内容是否被篡改或伪装,由于“持有合法的密钥”就是发送者和接收者合法身份的证明,因此消息认证码的密钥必须对发送者以外的人保密,否则就会产生篡改和伪装的风险。

 在数字签名中,签名生成和验证使用不同的密钥,只有持有私钥的本人才能够生成签名,但由于验证签名使用的是公钥,因此任何人都能够验证签名。

 对称密码和公钥密码的密钥都是用于确保机密性的密钥。如果不知道用于解密的合法密钥,就无法得知明文的内容。
 相对地,消息认证码和数字签名所使用的密钥,则是用于认证的密钥。如果不知道合法的密钥,就无法篡改数据,也无法伪装本人的身份。

 当我们访问以https://开头的网页时,Web服务器和浏览器之间会进行基于SSL/TLS的加密通信。在这样的通信中所使用的密钥是仅限于本次通信的一次密钥,下次通信时就不能使用了,想这样每次通信只能使用一次的密钥称为 会话密钥
 由于会话密钥只在本次通信中有效,万一窃听者获取了本次通信的会话密钥,也只能破译本次通信的内容。
 虽然每次通信都会更换会话密钥,但如果用来生成密钥的伪随机数生成器品质不好,窃听者就有可能预测出下次生成会话密钥,这样就会产生通信内容被破译的风险。
 相对于每次通信更换的会话密钥,一直被重复使用的密钥称为 主密钥

 一般来说,加密的对象是用户直接使用的信息,这样的情况下所使用的密钥称为CEK(Contents Encryting Key,内容加密密钥);相对地,用于加密密钥的密钥则称为KEK(Key Encryting Key,密钥加密密钥)。

 在很多情况下,之前提到的会话密钥都是被作为CEK使用的,而主密钥则是被作为KEK使用的。

 生成密钥的最好方法就是使用随机数,因为米哟啊需要具备不易被他人推测的性质。在可能的情况下最好使用能够生成密码学上的随机数的硬件设备,但一般我们都是使用伪随机数生成器这一专门为密码学用途设计的软件。
 在生成密钥时,不能自己随便写出一些像“3F 23 52 28 E3....”这样的数字。因为尽管你想生成的是随机的数字,但无论如何都无法避免人为偏差,而这就会成为攻击者的目标。
 尽管生成伪随机数的算法有很多种,但密码学用途伪随机生成器必须是专门针对密码学用途而设计的。例如,有一些伪随机数生成器可以用于游戏和模拟算法,尽管这些伪随机数生成器所生成的数列看起也是随机的,但只要不是专门为密码学用途设计的,就不能用来生成密钥,因为这些伪随机数生成器不具备不可预测性这一性质。

 有时候我们也会使用人类的可以记住的口令(pasword或passphrase)来生成密钥。口令指的是一种由多个单词组成的较长的password。
 严格来说,我们很少直接使用口令来作为密钥使用,一般都是将口令输入单向散列函数,然后将得到的散列值作为密钥使用。
 在使用口令生成密钥时,为了防止字典攻击,需要在口令上附加一串称为盐(salt)的随机数,然后在将其输入单向散列函数。这种方法称为“基于口令的密码(Password Based Encryption,PBE)”。

 在使用对称密码时,如何在发送者和接收者之间共享密钥是一个重要的问题,要解决密钥配送问题,可以采用事先共享密钥,使用密钥分配中心,使用公钥密码等方法,除了上述方法,之前还提到一种解决密钥配送的问题的方法称为Diffie-Hellman密钥交换。

 有一种提供通信机密性的技术称为 密钥更新 (key updating),这种方法就是在使用共享密钥进行通信的过程中,定期更改密钥。当然,发送者和接收者必须同时用同样的方法来改变密钥才行。
 在更新密钥时,发送者和接收者使用单向散列函数计算当前密钥的散列值,并将这个散列值用作新的密钥。简单说,就是 用当前密钥散列值作为下一个密钥
 我们假设在通信过程中的某个时间点上,密钥被窃听者获取了,那么窃听者就可以用这个密钥将之后的通信内容全部解密。但是,窃听者却无法解密更新密钥这个时间点之前的内容,因为这需要用单向散列函数的输出反算出单向散列函数的输入。由于单向散列函数具有单向性,因此就保证了这样的反算是非常困难的。
 这种防止破译过去的通信内容机制,称为 后向安全 (backward security)。

 由于会话密钥在通信过程中仅限于一次,因此我们不需要保存这种秘密。然而,当密钥需要重复使用时,就必须要考虑保存密钥的问题了。

 人类是 无法记住具有实用长度的密钥 的。例如,像下面这样一个AES的128比特的密钥,一般人是很难记住的。
51 EC 4B 12 3D 42 03 30 04 DB 98 95 93 3F 24 9F
就算勉强记住了,也只过不是记住一个密钥而已。但如果要记住多个像这样的密钥并且保证不忘记,实际上是非常困难的。

 我们记不住密钥,但如果将密钥保存下来又可能会被窃取。这真是一个头疼的问题。这个问题很难得到彻底解决,但我们可以考虑一些合理的解决方法。
 将密钥保存生文件,并将这个文件保存在保险柜等安全地方。但是放在保险柜里的话,出门就无法使用了。这种情况,出门时就需要随身携带密钥。而如果将密钥放在存储卡随身携带的话,就会产生存储卡丢失、被盗等风险。
 万一密钥被盗,为了能够让攻击者花更多的时间才能真正使用这个密钥,我们可以使用将密钥加密后保存的方法,当然,要将密钥加密,必须需要另一个密钥。像这样用于密码加密的密钥,一般称为KEK。
 对密钥进行加密的方法虽然没有完全解决机密性的问题,但在现实中却是一个非常有效地方法,因为这样做可以减少需要保管密钥的数量。
 假设计算机上有100万个文件,分别使用不同的密钥进行加密生成100万个密文,结果我们手上就产生了100万个密钥,而要保管100万个密钥是很困难的。
 于是,我们用一个密钥(KEK)将这100万个密钥进行加密,那么现在我们只要保管者一个KEK就可以了,这一个KEK的价值相当于签名的100万个密钥的价值的总和。
 用1个密钥来代替多个密钥进行保管的方法,和认证机构的层级化非常相似。在后者中,我们不需要信任多个认证机构,而只需要信任一个根CA就可以了。同样的,我们也不需要确保多个密钥的机密性,而只需要确保一个KEK的机密性就可以了。

 密钥的作废和生成是同等重要的,这是因为密钥和明文是等价的。

 假设Alice向Bob发送了一封加密邮件。Bob在解密之后阅读了邮件的内容,这时本次通信所使用的密钥对于Alice和Bob来说就不需要了。不在需要的密钥必须妥善删除,因为如果被窃听者Eve获取,之前发送的加密邮件就会被解密。

 如果密钥是计算机上的一个文件,那么仅仅删除这个文件是不足以删除密钥的,因为有一些技术能够让删除的文件“恢复”。此外,很多情况下文件的内容还会残留在计算机的内存中,因此必须将这些痕迹完全抹去。简而言之,要完全删除密钥,不但要用到密码软件,还需要在设计计算机系统时对信息安全进行充分的考虑

 如果包含密钥的文件被误删或者保管密钥的笔记本电脑损坏了,会怎么样?
 如果丢失了对称密钥密码的共享密钥,就无法解密密文了。如果丢失了消息认证码的密钥,就无法向通信对象证明自己的身份了。
 公钥密码中,一般不太会发送丢失公钥的情况,因为公钥是完全公开的,很有可能在其他电脑上存在副本。
 最大的问题是丢失公钥密码的私钥。如果丢失了公钥密码的私钥,就无法解密用公钥密码加密的密文了。此外,如果丢失了数字签名的私钥,就无法生成数字签名了。

 Diffie-Hellman密钥交换(Diffie-Hellman key exchange)是1976年由Whitfield Diffie和Martin Hellman共同发明的一种算法。使用这种算法,通信双方仅通过交换一些可以公开的信息就能够生成共享秘密数字,而这一秘密数字就可以被用作对称密码的密钥。IPsec 中就使用了经过改良的Diffie-Hellman密钥交换。

2 Alice 生成一个随机数A
 A是一个1 ~ P-2之间的整数。这个数是一个只有Alice知道的密码数字,没有必要告诉Bob,也不能让Eve知道。

Alice计算出的密钥=Bob计算出的密钥

  在步骤1-7中,双方交换数字一共有4个,P、G、G A mod P 和 G B mod P。根据这4个数字计算出Alice和Bob的共享密钥是非常困难的。
 如果Eve能欧知道A和B的任意一个数,那么计算G A*B 就很容易了,然而仅仅根据上面的4个数字很难求出A和B的。
 根据G A mod P 计算出A的有效算法到现在还没有出现,这问题成为有限域(finite field) 的 离散对数问题

 Diffie-Hellman密钥交换是利用了“离散对数问题”的复杂度来实现密钥的安全交换的,如果将“离散对数问题”改为“椭圆曲线上离散对数问题”,这样的算法就称为 椭圆曲线Diffie-Hellman 密钥交换。
 椭圆曲线Diffie-Hellman密钥交换在总体流程上是不变的,只是所利用的数学问题不同而已。椭圆曲线Diffie-Hellman密钥交换能够用较短的密钥长度实现较高的安全性。

 基于口令密码(password based encryption,PBE)就是一种根据口令生成密钥并用该密钥进行加密的方法。其中加密和解密使用同一个密钥。
 PBE有很多种实现方法。例如RFC2898和RFC7292 等规范中所描述的PBE就通过java的javax.crypto包等进行了实现。此外,在通过密码软件PGP保存密钥时,也会使用PBE。
PBE的意义可以按照下面的逻辑来理解。

想确保重要消息的机制性。
  ↓
将消息直接保存到磁盘上的话,可能被别人看到。
  ↓
用密钥(CEK)对消息进行加密吧。
  ↓
但是这次又需要确保密钥(CEK)的机密性了。
  ↓
将密钥(CEK)直接保存在磁盘上好像很危险。
  ↓
用另一个密钥(KEK)对密钥进行加密(CEK)吧。
  ↓
等等!这次又需要确保密钥(KEK)的机密性了。进入死循环了。
  ↓
既然如此,那就用口令来生成密钥(KEK)吧。
  ↓
但只用口令容易遭到字典攻击
  ↓
那么就用口令和盐共同生成密钥(KEK)吧。
  ↓
盐可以和加密后的密钥(CEK)一切保存在磁盘上,而密钥(KEK)可以直接丢弃。
  ↓
口令就记在自己的脑子里吧。

PBE加密包括下列3个步骤:

  盐是由伪随机数生成器生成的随机数,在生成密钥(KEK)时会和口令一起被输入单向散列函数。
 密钥(KEK)是根据秘密的口令生成的,加盐好像没有什么意义,那么盐到底起到什么作用呢?
盐是用来防御字典攻击的 。字典攻击是一种事先进行计算并准备好候选密钥列表的方法。
 我们假设在生成KEK的时候没有加盐。那么主动攻击者Mallory就可以根据字典数据事先生成大量的候选KEK。
 在这里,事先是很重要的一点。这意味着Mallory可以在窃取到加密会话的密钥之前,就准备好了大量的候选KEK。当Mallory窃取加密的会话密钥后,就需要尝试将它解密,这是准备好了大量事先生成的候选KEK,就能够大幅度缩短尝试的时间,这就是 字典攻击 (dictionary attack)。
 如果在生成KEK时加盐,则盐的长度越大,候选KEK的数量也会随之增大,事先生成的的候选KEK就会变得非常困难。只要Mallory还没有得到盐,就无法生成候选KEK。这是因为加盐之后,候选KEK的数量会变得非常巨大。

 具有充足长度的密钥是无法用人脑记忆的。口令也是一样,我们也无法记住具有充足比特数的口令。
 在PBE中,我们通过口令生成密钥(KEK),在用这个密钥来加密会话密钥(CEK)。由于通过口令生成的密钥(KEK)强度不如由伪随机数生成器生成的会话密钥(CEK),这就好像是将一个牢固的保险柜的钥匙放在了一个不怎么牢固的保险柜保管,因此在使用基于口令的密钥时,需要将盐和加密后的CEK通过物理方法进行保护。例如将盐和加密后的CEK保存到存储卡随身携带。

 在生成KEK时,通过多次使用单向散列函数就可以提高安全性。例如,将盐和口令输入单向散列函数,进行1000次的散列函数所得到的散列值作为KEK来使用,是一个不错的方法。
 像这样将单向散列函数进行多次迭代的方法称为 拉伸 (stretching)。

该系列的主要内容来自《图解密码技术第三版》
我只是知识的搬运工
文章中的插图来源于原着

⑵ DH密钥交换

在使用对称密码时,肯定会遇到密钥配送问题。例如,A最近认识了B,现在想给B发消息,但又不想让别人知道消息内容,因此用对称密码对消息做了加密。但B收到密文后无法解密,因为他不知道密钥是什么,而如果A将密钥与密文一起发的话,虽然B可以解密誉仿余,但窃听者E有了密钥和密文也能知道消息内容。

解决密钥配送问题常用的方法有以下几种:

下面介始Diffie-Hellman密钥交换的方法。

虽然该方法名为密钥交换,但实际上双方并没有真正交换密钥,而是通过计算生成出了一个相同的密钥,因此这种方法也称为Diffie-Hellman密钥协商。

假设现在Alice与Bob需要共享一个对称密码的密钥,此时Eve正在双方之间的通信线庆滚路上窃听,Alice和Bob采用Diffie-Hellman密钥交换方法生成共享密钥,步骤如下:

其中P是一个非常大的质数,而G是一个和P相关的数(原根),称为生成元,它可以是一个较小的数字。P和G不需要保密,另外,这两个质数也可以由Bob来生成。

记Alice生成的随机数为A,Bob生成的随机数为B,这两个数字只有生成的人才知道,其他人不知道。

Alice根据自己生成的随机数A,计算出:X = G ^ A mod P,并把X告知Bob。

同样,Bob计算出:Y = G ^ B mod P,并把Y告知Alice。

Alice收到Bob发来的Y,计算出共享密钥。

Bob收到Alice发来的X,计算出共享密钥。

可见,Alice与Bob计算出来大耐的共享密钥是一致的。那么窃听者Eve能算出来吗?

在上述密钥交换过程中,出现在网络上的数字有G,P,X以及Y,仅根据这4个数字是很难求出A和B的,这是个有限群的离散对数问题,而有限群的离散对数问题的复杂度正是支撑Diffie-Hellman密钥交换算法的基础。

⑶ 密码学认识(初识+迪菲赫尔曼秘钥交换)

在某些情况下,我们在沟通时,并不想让这个资讯让他人截获。比如男女主人公约会时,会说老地方见(除了他们俩,鬼知道老地方是哪里);两个山寨头子第一次见面时,先对一下暗号,“天王盖地虎,宝塔镇河妖”等等。

于是自然而然就有了密码学最开始的状态。

两千年前,古罗马名将恺撒为了防止敌方截获情报,将罗马字母建立一张对应表,这样如果不知道密码本,即使截获一段信息也看不懂。
这种编码方式史称“恺撒密码”。

如对应表如下:

使用时,加密者查找明文字母表中需要加密的消息中的每一个字母所在位置,并且写下密文字母表中对应的字母。需要解密的人则根据事先已知的密钥反过来操作,得到原来的明文。例如:

但是这种简单的对照表,只要多截获一些一些情报,就可以破解出来。比如B字母出现的概率为4.5%,那么概率在其上下浮动的密文字母就很有可能指向B。

所以电视剧里面那些,根据一组数字,这些数字对应圣经/康熙字典的页码和位置的加密方式,是很容易通过统计学的方法破译出来的。

好的密码必须要做到,根据已知明文和密文的对应推断不出新的密文内容。即无法用统计的方式找到明文和密文之间的转换规律。

从数学的角度讲,加密的过程可以看做是一个函数的运算,解密的过程是反函数的运算。明码是自变量,密码是函数值。好的密码就是不应该通过一组自变量和函数值就能推导出函数。

密码的最高境界是,地方在截获密文后,对我方所知没有任何增加,用信息论的专业术语讲,就是信息量没有增加。

现代密码学基于信息论的理论基础,不只关注信息保密问题,还同时涉及信息完整性验证(消息验证码)、信息发布的不可抵赖性(数字签名)、以及在分布式计算中产生的来源于内部和外部的攻击的所有信息安全问题。

密码学主要有三个分支:哈希密码,对称密码,非对称密码。

又称对称秘钥算法,私钥加密,共享秘钥加密。
这类算法在加密和解密时使用相同的密钥,或是使用两个可以简单地相互推算的密钥。事实上,这组密钥成为在两个或多个成员间的共同秘密,以便维持专属的通信联系。

常用的对称加密算法有:DES、3DES、 AES 、Blowfish、IDEA、RC5、RC6

注:对称加密也分为很多的门派,有兴趣的同学可以看这篇 博客

所以在远距离传输消息时,秘钥该如稿弯何交换呢?没有秘钥怎么加密?不加密怎么安全的传输秘钥?这是一个先有鸡还是先有蛋的问题。

那么该怎么解决这个难题呢?

在此之前,我们要先了解一下什么是单向函数。

单向函数wiki网络:对于每一个输入,函数值都容易计算(多项式时间),但是给出一个随机输入的函数值,算出原始输入却比较困难(无法在多项式时间内使用确定性图灵机计算)。
单向函数是否存在仍然是计算机科学中的一个开放性问题。

我们先假定,A色值混合B色值,可以得到C色值,但是只知道A和C,无法推导出B的色值,即这是一个单向函数。

1.甲、乙两个人约定一个公开的色值A
2.甲混合A、B色值,得到X,前敬旦传给乙;乙混合A、C色值,得到Y,传给甲
3.这是甲得到Y,混合B得到Z;乙获得X,混合C同样可以获得Z。

这是一个比较简单的数学问题,即 :
A + B = X;
A + C = Y;
则: X + C = Y + B = A + B + C = Z;

而第三者可以获取的信息是 A、X、Y,根据单向函数的定义,无法反推出Z

视频地址

这就是迪菲赫尔曼秘钥交换的原理所在,在数学上找到单向函数是主要突破点。

目前主流的方法,是使用离散对数作为单向函数。

离散对数:基于同余和原根的对数运算

离散对数至今没有比较好的办法去解决,使用穷举法的话,复杂度为 ,n这里是群的大小的二进制表示的长度,也可以理解为key的二进制长度。如果用1024位的key,这个复杂度在目前的计算速度下基本可视作无法解决。
(天河二号运算速度3.39亿亿次/s)

所以我们会把离散对数问慧扰题认为是一个“很难”的问题,即它是一个单向函数。

迪菲赫尔曼秘钥交换通过单向函数的特性,给出了一种秘钥交换解决方案。

但是另一个问题又浮出水面了。如果我们全部使用对称加密的方式,那跟n个人聊天,就要保存n-1个秘钥,进行n-1次秘钥交换;而且一旦对方被突破,双方就都没有什么信息安全可言了。

非对称加密应运而生。具体请看我的下一篇博客。

⑷ a和b使用对称密钥密码进行保密通信,怎么实现密钥交换

对称密钥密码需要同一个密钥从发送方加密到接收方,因此需要在两个通信者之间进行密钥交换。以下是几种常见的密钥交换方法:

1. 预先共享密钥:双方在通信前共同协定并保存一个密钥,以此实现保密通信。这种方法会出现密钥泄漏的风险。

2. DH密钥交换算法:双方通过数学运算,各自生成一个私钥和公钥,最终得到一个共享密钥。该密钥是只有双方知道的,枣棚并且每次通信都生成新的密钥,安全性相对较高。

3. RSA密钥交换算法:双方分别生成公钥和私钥,使用对方的公钥加密自己的私钥并发送给对方,对方收到后使用自己的私钥解密得到发凳迟则送方的私钥,用两方的私钥生成共享密钥。该方法较为复杂,但是安全性较高。

以上几种方法都可以实现对称密钥的交换,根据实际情况选择合适的方法进行使旦空用。

⑸ 如何描述RSA密钥交换算法

密钥交换算法中讲到的密钥都是一般指对称加密算法的密钥(注意区别:非对称算法自己本身的密钥),因为对于对称算法的特性来说,采取”一次一密”的话才比较安全。

RSA,可以用做密钥传输算法,即使用对端的RSA公钥对密钥进行加密,对端使用自己的私钥对其进行解密耐春嫌,昌手就可以获取密钥。

RSA密钥生森如成步骤:

⑹ 电脑上密钥 和密码是什么意思

网络密钥即是指在网络中使用的密钥。
互联网络是一个开放式的伏液慎系统,任何人都可以通过它共享埋带自己的资源,获取需要的信息。当人们在网络上进行信息交流的时候,比如聊天、收发邮件,或者登录需要提供个人信息的站点,这些包含着重要个人资料的信息包很可能在到达最终目的地前被第三方截缺敬获并破解。所以保护个人隐私是互联网络的头等大事,而使用加密密钥是最简单、有效的方法。
网络密钥其实就是你设置的一个密码,也就是保证你的无线网络的安全的,不知道你的密码的人就不能用你的无线网络联网。一般的无线路由器都有这个功能的,在路由器的安全设置里面,专门有一项就是设置你的网络密钥的,因为所用的无线路由器的型号不同,设置方式也可能略有不同,但是意思都是一样的,具体的你可以参照无线路由器的说明书。

⑺ 电脑上密钥 和密码是什么意思

一、密码是一种用来混淆的技术,它希望将正常的(可识别的)信息转变为无法识别的信息。密码在中文里是“口令”的通称。
在电脑中经常使用密码有两种,一种是用户根据个人的需要设置的密码,如为防止他人使用这如电脑,设置了开机登录密码,不输燃颂脊入密码或密码不对就不能开机;为防他人修改BIOS,设置了BIOS密码皮渗;还有锁屏等密码,这些密码可以更改还可以撤销。另一种是登录网站、使用电子邮箱、上QQ、进网络知道等,申请时添写的密码,这类密码可以修改,但不能取销。

二、密钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的数据,密钥是授权的证明。
一个完整的电脑是由硬件和软件组成的。软件有付费的和免费的,免费的从网上下载安装即可使用,付费的要求注册,不然不让使用,有的让试用,试用期过后就不能使用了。当用户付费后他会给你一个代码,如“TFP9Y-VCY3P-VVH3T-8XXCC-MF4YK”,这个代码就叫密钥,用密钥注册将这个软件激活。电脑常用的密钥,如操作系统,办公软件,收费的游戏等。密钥是商家给的,用户只能使用,樱悄不能更改。

热点内容
途观l值得买哪个配置 发布:2025-02-14 07:06:33 浏览:60
格来云服务器到期 发布:2025-02-14 06:48:43 浏览:905
订奥迪A7哪个配置比较好 发布:2025-02-14 06:44:23 浏览:140
spss的数据库 发布:2025-02-14 06:37:32 浏览:119
sql除法运算 发布:2025-02-14 06:30:43 浏览:535
如何在家部署一台服务器 发布:2025-02-14 06:22:04 浏览:434
u盘里文件夹是空的 发布:2025-02-14 06:13:22 浏览:803
安卓如何缩放图片尺寸 发布:2025-02-14 06:06:34 浏览:116
六年级简便算法题 发布:2025-02-14 05:53:02 浏览:8
脚本精灵要root吗 发布:2025-02-14 05:51:30 浏览:212