• 8515阅读
  • 5回复

[提问]QML的代码安全问题· [复制链接]

上一主题 下一主题
离线cycloneii
 

只看楼主 倒序阅读 楼主  发表于: 2011-12-05
QML是解释型的脚本语言,如果用QDeclareView和QRC封装QML是可以保证脚本的源码不被使用者得到,但是也失去了跨平台的功能(比如symbian、meego、windows、armlinux设备,如果编译QML成二进制文件,就失去了可移植性,还需要重新编译),那么有没有方式可以既保证代码安全又保证可移植性呢?
离线XChinux

只看该作者 1楼 发表于: 2011-12-06
可以自己加密,封装到qrc里
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线cycloneii

只看该作者 2楼 发表于: 2011-12-07
我的意思是想问,怎么保持qml的跨平台性和代码安全的平衡,如果封装在qrc中,那么不能用qml调用,否则即使加密之后再保存再qrc里面,仍然可以通过顶层qml的操作来知道如何解密打开qrc里面的qml文件。如果用C++来操作,那么C++程序需要编译,这样就失去了脚本语言的跨平台性,需要针对不同的平台重新编译一遍源码。
比如我就很好奇symbian里面的程序发布,如果是发布qml脚本,那么软件就相当于开源了;如果发布的是symbian操作系统的二进制文件,那么是不是就意味者它不能再移植到其它平台下去了。虽然meego不在了,但是使用qt的平台还有不少,难道还针对每个平台编译一次,那还怎么竞争的过java/android?
离线XChinux

只看该作者 3楼 发表于: 2011-12-21
你想用qml完成所有的功能?就目前Qt的实现来说,完全不使用C++情形这样的比例太小了,使用C++还是必须的。
qml走到哪里,意味着Qt库的支持走到哪里,所以跟着Qt所支持的平台走,发布C++编译版本应该不是问题。
qml加密问题,官方目前没支持吧,你可以自己修改qmlviewer相关代码支持自己的加密,不过这就不通用了,说到底还得官方支持才行。



再一个,现在在android搞得双核、四核,太不正常了,连PC上都没有如此疯狂。既然Java做客户端软件在PC上都失败了,那么它在手机上就能保持成功吗?我对此保持怀疑。当出现瓶颈的时候,就是解决此问题的时候了。


二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线gwyanping

只看该作者 4楼 发表于: 2013-07-05
qml 在android上运行,靠谱不
离线ppdayz

只看该作者 5楼 发表于: 2013-07-05
还行,效果不错
快速回复
限100 字节
 
上一个 下一个