论坛首页 Java企业应用论坛

怎样用Java获得Server的Mac地址(关于添加license)?

浏览 14903 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-01-18  
大家好,最近做项目要求License保护,想来想去,没有其他的好办法,就用Truelicense绑定Mac地址的办法了(不知道有没有更好的办法,同志们指点)。但是Java 是没有获取Mac地址的API的。在网上查了一下,发现有办法获取,就是让Java执行nbstat -a IP命令,然后获取stream解析。但是又据说Unix不支持此命令,小弟我现在没有Unix环境,不能验证。大家谁做过类似的项目的,比如添加license,获取mac地址等等的,都说一下吧,谢谢。
   发表时间:2007-01-18  
这种不标准的做法,也只好硬做了。
你可以根据System.getProperties()获得当前系统是Unix还是Windows,然后分别使用各自的shell命令好了。
0 请登录后投票
   发表时间:2007-01-18  
pioneer21th 写道
大家好,最近做项目要求License保护,想来想去,没有其他的好办法,就用Truelicense绑定Mac地址的办法了(不知道有没有更好的办法,同志们指点)。但是Java 是没有获取Mac地址的API的。在网上查了一下,发现有办法获取,就是让Java执行nbstat -a IP命令,然后获取stream解析。但是又据说Unix不支持此命令,小弟我现在没有Unix环境,不能验证。大家谁做过类似的项目的,比如添加license,获取mac地址等等的,都说一下吧,谢谢。


这??
控制Ip范围不可以吗? 将来怎么再改哦
0 请登录后投票
   发表时间:2007-01-18  
Lucas Lee 写道
这种不标准的做法,也只好硬做了。
你可以根据System.getProperties()获得当前系统是Unix还是Windows,然后分别使用各自的shell命令好了。


那么,有解决此类问题(包括license问题)的标准做法吗?
0 请登录后投票
   发表时间:2007-01-18  
adamzhao 写道


这??
控制Ip范围不可以吗? 将来怎么再改哦


对于一个产品来说,你怎么能知道和要求用户的Server用什么IP地址呢?
况且,一般情况下,Server多数都用内网IP,不光是IP范围一样,甚至连IP地址都可能一样。
0 请登录后投票
   发表时间:2007-01-18  
pioneer21th 写道
Lucas Lee 写道
这种不标准的做法,也只好硬做了。
你可以根据System.getProperties()获得当前系统是Unix还是Windows,然后分别使用各自的shell命令好了。


那么,有解决此类问题(包括license问题)的标准做法吗?

用公私密钥系统,你用私钥生成license,在客户端用公钥检查这个license的合法性。然后用混淆器把你发布的包加密。
0 请登录后投票
   发表时间:2007-01-18  
kdekid 写道
用公私密钥系统,你用私钥生成license,在客户端用公钥检查这个license的合法性。然后用混淆器把你发布的包加密。


是的,我们准备采用的TrueLicense正是基于这种思想。但是,生成的License如果不和某种东西绑定,是不能保护你的系统拷贝的,即你授权的用户可以拿着这个license再免费的送给别人使用,现在一些共享软件不是也遇到这个问题了吗?
0 请登录后投票
   发表时间:2007-01-18  
pioneer21th 写道
大家好,最近做项目要求License保护,想来想去,没有其他的好办法,就用Truelicense绑定Mac地址的办法了(不知道有没有更好的办法,同志们指点)。但是Java 是没有获取Mac地址的API的。在网上查了一下,发现有办法获取,就是让Java执行nbstat -a IP命令,然后获取stream解析。但是又据说Unix不支持此命令,小弟我现在没有Unix环境,不能验证。大家谁做过类似的项目的,比如添加license,获取mac地址等等的,都说一下吧,谢谢。

unix不支持么?
记得很久以前写过一个用Runtime执行command获取Stream的东东,
在solaris下抓grep信息
0 请登录后投票
   发表时间:2007-01-19  
我曾经也做过,不过因为客户的机器是windows,所以开始我用jni来获取到了mac地址,后来又通过command来从得到了包括ip和mac地址的一个字符串,然后再解析字符串得到mac地址。关于truelicense我到没有用过,当时自己写了一些小算法来生成和解析license,然后再混淆,如果混淆器够强,在没有源代吗的情况下要破解还是不容易的。
0 请登录后投票
   发表时间:2007-01-19  
用C实现Jini,然后用Java去调用不就行了.需要部署的系统就实现一个.调用Shell虽然简单,感觉和Java配合得不好.
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics