Java/Bukkit(Minecraft)-如果文件包含playername,则检查存储在同一行中的密码,该密码位于“a”之后:&引用;做点什么

Java/Bukkit(Minecraft)-如果文件包含playername,则检查存储在同一行中的密码,该密码位于“a”之后:&引用;做点什么,java,file,plugins,minecraft,bukkit,Java,File,Plugins,Minecraft,Bukkit,这是我的第一个问题,希望你能帮助我。我正在用Java为Bukkit编写一个注册/登录插件。现在,当玩家加入我的服务器时,我希望他登录。我的插件必须检查玩家提供的密码是否正确。这就是我到目前为止所做的代码 问题是,我不知道该怎么做。有人能解释一下怎么做吗(也许只能用文字) 注意:用户的密码保存在我创建的名为“passwd.crypt”的文件中。下面是它的一个示例字符串 ExampleUser:cGFzc3dvcmQ= 密码是加密存储的。我建议使用Bukkit提供的YAML内置库来存储密码并将其与

这是我的第一个问题,希望你能帮助我。我正在用Java为Bukkit编写一个注册/登录插件。现在,当玩家加入我的服务器时,我希望他登录。我的插件必须检查玩家提供的密码是否正确。这就是我到目前为止所做的代码

问题是,我不知道该怎么做。有人能解释一下怎么做吗(也许只能用文字)

注意:用户的密码保存在我创建的名为“passwd.crypt”的文件中。下面是它的一个示例字符串

ExampleUser:cGFzc3dvcmQ=

密码是加密存储的。

我建议使用Bukkit提供的YAML内置库来存储密码并将其与用户关联。然后,您可以使用一个简单的文件配置#getString(String)来获取与用户关联的密码

我不知道SnakeYAML的具体实现,但我假设它存储了一个行号表来引用存储在获取对象位置的节点,而不是一个BufferedReader来读取每一行。这意味着大文件的性能有所提高


还有两件事:除非你有硬件安全问题,为什么要加密密码?而且,我不会在运行时执行IO,而是在集合中保存插件启动时对初始值的引用,这比从文件中读取磁盘要快

什么不起作用?如果要寻求帮助,则必须详细说明错误。确定。编辑:“问题是,我不知道怎么做。有人能解释怎么做吗(也许只能用文字)?”我没有错。我只是想寻求进一步的帮助。你不应该对密码进行加密,而应该对密码进行加密和散列。更安全。谢谢各位,xTrollxDudex的回答帮助了我。我现在正在从YML配置文件读取密码。我的加密也很好。你能试着写一个代码示例或类似的东西吗?提前谢谢。很高兴我能帮上忙:)
ExampleUser:cGFzc3dvcmQ=