netsh wlan 添加配置文件不导入加密密码

netsh wlan 添加配置文件不导入加密密码

我从一台正确连接到 WiFi 网络并使用 WPA-TKIP 密码的 Windows 7 计算机上导出了无线网络连接配置文件。导出的 xml 文件显示了正确的设置和一个keyMaterial我只能猜测是加密密码的节点。

当我将 xml 带到另一台 Windows 7 计算机并使用导入它时netsh wlan add profile filename="WiFi.xml",它会正确添加配置文件的 SSID 和加密类型,但会弹出一个气球提示我需要输入密码。

有没有办法将密码与所有其他设置一起导入,或者我是否遗漏了有关添加配置文件的某些信息?

以下是删除了个人信息的导出的 xml:

<?xml version="1.0"?>
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
    <name>[removed]</name>
    <SSIDConfig>
        <SSID>
            <hex>[removed]</hex>
            <name>[removed]</name>
        </SSID>
        <nonBroadcast>false</nonBroadcast>
    </SSIDConfig>
    <connectionType>ESS</connectionType>
    <connectionMode>auto</connectionMode>
    <autoSwitch>false</autoSwitch>
    <MSM>
        <security>
            <authEncryption>
                <authentication>WPAPSK</authentication>
                <encryption>TKIP</encryption>
                <useOneX>false</useOneX>
            </authEncryption>
            <sharedKey>
                <keyType>passPhrase</keyType>
                <protected>true</protected>
                <keyMaterial>[removed]</keyMaterial>
            </sharedKey>
        </security>
    </MSM>
</WLANProfile>

任何帮助或建议都非常感谢。谢谢。

更新:似乎如果我使用导出设置key=clear,密码将存储在不受保护的文件中,我可以毫无问题地将文件导入另一台计算机。我已更新我的问题以反映我的发现。

答案1

key=clear导出配置文件时只需使用该参数。

netsh wlan export profile key=clear

现在密码/密钥将以明文形式存储在 XML 文件中。导入配置文件时(如上所述),系统不会提示您输入密码。

答案2

问题在于,加密的密码是使用您导出配置的机器上的机器特定密钥加密的。您可以将该 xml 文件导入回同一台机器,这样就可以正常工作。但它无法在另一台机器上工作,因为第二台机器没有相同的机器特定密钥,无法解密密码。

我不太确定 netsh 使用什么作为特定于机器的密钥,或者是否可以将其从一个系统克隆到另一个系统。

答案3

Ryan 说得对,密钥具有机器专用加密。以下是解决方案:

  1. 打开 XML 文件并找到以下行:<protected>true</protected>

  2. 更改为:<protected>false</protected>

  3. 您将在下面看到加密的行:<keyMaterial>01000000D08C9DDF0115D1118</keyMaterial>

  4. 将其更改为纯文本形式的密钥:<keyMaterial>Yourkey</keyMaterial>

注意:这意味着您的无线密钥将以明文形式保存,并且有权访问该文件的每个人都可以读取您的无线密钥。但这样做是可行的!

答案4

我已经成功使用了无线局域网应用程序接口在我的 Windows XP 机器上,希望它也能帮助你(还没有在 Win7 上测试过)

编辑:

我知道它是由赛门铁克的人编写的,这很奇怪,但你能做什么呢:)

相关内容