有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

通过Java在不使用新URL()的情况下加载文件

所以我正在做一个小游戏,我所在的市场非常。。。竞争的竞争如此激烈,以至于它被免费泄露给公众是极为常见的。若要泄漏游戏,必须移除HWID系统和Killswitch系统。要做到这一点,最常用的方法就是在整个项目中搜索“新URL”,并检查它生成的所有链接,然后根据需要删除它们

这必须只使用默认的Java类,我不能使用任何库或其他可链接下载

我的问题是:“是否可以向我的dropbox文件发出请求,在不使用URL类的情况下读取文本文档?”

不确定我是否涵盖了我需要涵盖的所有内容,所以如果您感到困惑,我可以提供更多信息

提前谢谢


共 (3) 个答案

  1. # 1 楼答案

    可以改用URI

    URI uri = new URI("http://...");
    uri.toURL().openConnection():
    
  2. # 2 楼答案

    这是一个由来已久的问题:“如何保护Java应用程序免受X攻击?”

    事实上,你不能。任何有足够时间和工作的人都可以拆开你的Java应用程序,把它重新缝合在一起。当然,你可以使用一些很好的混淆器,这使得任何想快速完成的人都不可能做到

    过了这一步,你问了一个有点琐碎的问题。这就是“如何隐藏‘新URL’”。我假设您最终将依赖urlconnection类来实际处理url。这可能需要进行大量优化,还可以添加更多层,比如将类名和url存储为字节数组等。它还可以对构造函数和类进行一些缓存我真的建议你不要使用这个

    public static URLConnection getConnection() {
        try {
            Class<?> cla = Class.forName("java.net.URL");
            return (URLConnection) cla.getMethod("openConnection", new Class[0]).invoke(cla.getConstructor(String.class).newInstance("http://somtopsecereturl.tld"), new Object[0]);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
        } catch (SecurityException e) {
            e.printStackTrace();
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        } catch (NoSuchMethodException e) {
            e.printStackTrace();
        }
        return null;
    }
    

    当然,你可以继续往下看,通过反射调用进行实际读取,这样你就永远不会引用真正的对象类型,因此很难找到

  3. # 3 楼答案

    一个技术含量相当低的混淆:创建一个包含URL实例的类:

    class myFoo {
        private URL url;
        myFoo (String s)  throws MalformedURLException {
            this.url = new URL(s);
        }
        public getHatSize() {
            return this.url;
        }
    }