当前位置:首页 » 操作系统 » 一个都不能死源码

一个都不能死源码

发布时间: 2024-09-06 11:45:06

‘壹’ 电影《源代码》结局什么意思

现实中,主角本来的身体就只剩下了半截,靠维生设备维持着脑波之类的东西。那个瘸子科学家就用这点仅存的脑波进行试验。在火车上的是另外一个人,可能他们的脑波频率等很多特征都接近,就借用了他的身体去解除炸弹。

由于平行理论,火车上的人在另外一个平行空间还活着。当主角的半截身体还活着时,主角的思维已经在火车上那个人身上了,切断维持半截身体的供给,半截身体死亡,主角的灵魂或思维就寄存在了火车上那个人身上了,以那个人的身份生活下去了。

(1)一个都不能死源码扩展阅读

影片《源代码》是由邓肯·琼斯执导,杰克·吉伦哈尔、维拉·法米加、米歇尔·莫娜汉等人联袂出演。影片于2011年4月1日在美国上映。

影片讲述了一位在阿富汗执行任务的美国空军飞行员柯尔特·史蒂文斯,醒来时发现自己正处在一辆前往芝加哥的火车上,并就此经历的一系列惊心动魄的事件。

“咚,咚”“呼,呼”,急促的心跳声和喘息声震耳欲聋。一切都开始模糊,继而扭曲变形。然后,一阵尖锐的火车汽笛声,将柯尔特·斯蒂文斯上尉(杰克·吉伦哈尔 饰演)拉回了现实。窗外,是疾驰倒退的绿地。坐在他对面的女子(米歇尔·莫娜汉 饰演)疑惑地看着走神的他,又继续着话题,柯尔特突然觉得头皮发麻。

柯尔特意识到只有一种方法可以证明真相。他冲向洗手间,直愣愣地盯着里面的镜子,出现在镜子里的人,是一个身着呢子大衣、蓝色衬衫,眼中带着几分惊恐的中年男子。不是他自己,至少不是他印象中的自己。还没等他惊魂落定,一股强大的爆炸气流袭来,整列列车在烈火中被炸成碎片。猛然睁开双眼,柯尔特惊疑地看着四周,他发现自己身处一个独立的空间里,穿着本就属于他的军服。

‘贰’ 怎么提取软件源码

问题一:怎样提取一个软件的源代码 想看到源代码?我觉得不可能,不是有些哗序不能看到,而是所有的程序通过正当的途径都不能看到源代码,除非这个程序是你自个写的。因为几乎所有的程序在发布之前都会进行加密、加壳的操作。即使你知道人家采用什么技术进行的加密也不太可能会原样的还原出来源代码。所谓的破解也并不是把原程序的源代码给还原了之后给你破解的。破解软件也只不过是反编译了软件的汇编代码而已!

问题二:怎样获取软件的源代码 这个问题,如果仅有EXE,是不可能获取到源码的。
除非你跟开发者要。

问题三:怎么从excel表格里提取源代码? 例如表的名称是sheet1,则在sheet1的标签上点右键,查看代码就行

问题四:怎么才能得到一个软件的源代码 你好。
软件源代码一般来说就是软件公司产品发布时间一定期限后,自己公布出来的。
当然。使用反编译也是可以的。不过破解工作很复杂,足够再开发新软件了。得不偿失。

问题五:求一款网站源码提取工具 20分 这种软件是没有的
因为要获取整站源码 必须获取空间的权限
才能整站下载
否则获取的是网站模板

问题六:如何用apktool提取源代码 准备的工具除了jdk还有以下内容(在Google官网都有):
把apktool-install-windows-2.1_r01-1.zip,dex2jar-0.0.7-SNAPSHOT.zip解压到一个盘的根目录下(这里我选择H盘),同时把AXMLPrinter2.jar,apktool.jar和你想解包的apk软件也放在同一个目录下,然后“运行--cmd”打开控制台,输入cd /d h : / 进入H盘的根目录然后输入以下内容(控制台不要关,为了后面方便):
其中apktool.jar是解包工具,d表示解包,memo.apk是我要解包的软件,memo表示解包后输出到这个文件夹,等待片刻,就会生成memo文件夹,打开里面会有res文件夹下的所有文件和AndroidManifest.xml,用记事本就可以查看了。
以上是获得.xml文件和图片,下面获得里面的.java源代码:
用winRar或者好压打开memo.apk,截图如下:
把里面的classes.dex文件解压到H盘根目录下,然后重新打开控制台,输入dex2jar.bat classes.dex
得到一个名为classes.dex.dex2jar.jar的文件,此时用jd-gui.exe打开classes.dex.dex2jar.jar就可以看到所有源代码了!

如果想把反编译好的文件变回apk文件,只要在控制台输入
apktool.jar b memo就可以了
其中b就是重新封包的意思,memo是你刚才解包出来的文件夹,前提是确保所有文件都在memo文件夹里!!

问题七:能不能破解一个软件从而获得其所有源代码? 你是在说反编译吗?没有软件可以反编译。只能靠人来反编译,但十分麻烦。

问题八:.apk文件能获取源代码吗? 你做的APP 为什么你不知道源码。
在没有做混淆处理的情况下 是可以通过程序反编译出来的,源码也可以得到。
做了混淆的话,就比较棘手了

问题九:为什么无法获得软件源代码? 编译型软件的源代码几乎无法获取,可以这样子给你解释为什么从理论上无法获取:

源代码需要经过编译之后变成一连串的0和1,这一连串的0和1打包起来,就是我们日常所说的可执行文件,也就是你平时用的软件了。

OK,你想通过可执行文件,也就是这一连串的和0和1逆推回源代码,这几乎是不可能的事情,因为高级语言的源代码和最终生成的0和1不是死死的一一对应关系。高级语言需要先被转为汇编语言,然后汇编语言再转为0和1,汇编语言与0和1是一一对应关系的,但是高级语言和汇编语言就不一定了。

即便是同样的几句高级语言代码,在不同的编译器里面,也完全有可能是完全不同的汇编代码。而且同样逻辑的代码,即便是只有稍微几个关键字的不同,或者是变量的不同,都会产生不同的汇编代码。

所以,由二进制的0,1可执行文件,逆推高级语言,理论上可行,实际上不可行,因为工作量太大。类似大型软件,好几个G的,那是多少亿行的0和1,哪怕是全世界的程序员在一起逆推,都不知道需要多少年可以完全逆向出源代码。

那我们平时所说的逆向工程是什么呢?

OK,其实软件是可以逆向的,但是不是说逆向出真正的源代码,而是逆向出这个软件的汇编代码。但是需要注意,汇编代码在某种程度上并不能成为这个软件的源代码,因为汇编代码量极大,而且不具备良好的可读性,一句普通的高级语言源代码,可能就会生成好几十条汇编代码。所以汇编代码量是极大的。

同时,汇编代码几乎是不具备有架构性的,也就是说,即便你拿到了一个软件的汇编代码,你最多就是稍稍改改一些关键逻辑,比如说注册逻辑(用于破解)之类的,但是你要说通过汇编代码去改这个软件的功能,几乎就是不可能的事情。所以,汇编代码是无法用于开源的,你公开出来了,别人也没精力去看。

‘叁’ 源代码里结局超过了8分钟男主不死

感觉楼上都没看懂,这是我理解的,请勿吐槽。
其实是男主回到过去改变了将来要发生的事。
博士和女上尉以为自己创造的源代码只能保持8分钟,是不能改变过去的。但并不是如此。也不是什么所谓的世界A、B。认真看就有个细节,影片66分钟的时候,男主角问女上尉,如果当初没结婚,或者没离婚,只是嫁了人,会不会有另一个版本的她。女上尉打断他,说男主看到的都只是幻象,源代码这个技术不是用来改变过去的,而是影响未来。但男主坚信可以改变,他一再说要回到列车上拯救乘客,他们没必要死,并说女上尉错了。事实上,到故事结尾,发现男主确实的对的。因为女上尉送他回到列车之后,他拯救了乘客,也让罪犯落网。当他亲吻克里斯丁娜的时候,他以为8分钟之后所有都在他创造的美好环境中结束了,但是没有,时间延续下去了。所有人都得救了,而且不是在源代码世界里(因为源代码的世界只能保持8分钟)他才发现这个技术其实是可以改变过去的,他真实的拯救了那些人,并且发短信给女上尉,说“你和我一起阻止了这次爆炸”,这句话是重点,因为当时是他说服女上尉让他回到列车上救人的。还有,如果他们在两个不同的平行世界,女上尉是不能收到男主的短信的。所以可以证明,他们在同一个空间。而那次爆炸也并没发生。短信最后说,“古德温,如果没猜错,在源代码设备的某个位置上,有一个柯尔特.史蒂文斯上尉,正整装待命,答应我,你要帮助他,并且告诉他一切都会好起来的。”意思就是,让女上尉帮助他回到过去拯救自己。让他在阿富汗的任务中避免死亡。有人可能会说,他既然能发短信给女上尉,那么他并没死,为什么要拯救自己?因为发短信的人是肖恩,并不是柯尔特.史蒂文斯上尉。看影片最后,男主和克里斯丁娜在芝加哥那个哈哈镜(= =不知道是啥)面前的时候,镜中人是肖恩,他的身体也是肖恩。所以当他发现这个源代码真正秘密的时候,他想让古德温帮他拯救自己,然后回到自己父亲身边。

‘肆’ 公司如何保护源代码不被员工泄漏

您好。感谢您给我这次回答的机会。

首先,我认为这个有两种方法,看你怎么选。

第一种:

限制代码库只能在公司内网访问,公司之外怀能下载代码;

限制只能用公司的电脑下载代码、编写代码、提交代码;

限制访问代码库的权限,发人员不授予访问和自己不相关代码库的权限;

能访问代码的电脑上安装监控软件,号称可以监控所有员工活动;

设置公司网络防火墙,禁止访问github这样的开源网站;

把上面所有的规矩记录下来,教育员工知道,让他们签字画押必须遵守,钣者开除而且报警。

第二种:

招募受过良好教育、品行良好、专业团队工作经验的开发者;

对开发者友善,让他们不会对公司心怀怨恨;

把开发者的利益和公司利益关联起来,让他们不想为了蝇头小利牺牲公司利益。

其次,你可能不知道的东西。

1.绝大部分的公司(bat另说) 手中的源代码商业价值根本不高。

2.绝大部分的公司的源码质量都比不过github的哪些开源类库。

3.绝大部分的公司的源码都属于高度定制化的开发(就是换个公司,这个软件几乎就没有什么价值了)。

4.绝大部分的公司都不是靠“软件技术”赚钱的。

5.绝大部分的人都不会傻到直接把偷来的源码用于“商业活动”(非但不一定赚钱还可能吃官司,还不如去github上扒开源代码)

6."防御"的成本数倍于"重新开发一套"软件.

所以看淡一点源码,它在绝大多数公司中其实并不值”几个钱“虽然它的创造成本可能”很贵“。

所以说,这些东西掌握以后,就基本上不用担心代码被泄露了。

理论上做到公司电脑无法和外界连通,进出人员不得携带任何外设就可以彻底解决代码泄漏的问题。但是商业公司比较难做到。下面我们来的分析一下员工有没必要窃取代码,有没能力窃取到下完整的代码。

现在有一定规模的公司应用都是服务化的,不同的小组负责不同的服务,有各自的代码查看权限。所以一个或者几个程序员无法拿到全部代码。

超大规模的应用就更复杂了,有前台,中台,后台,APP等,架构也极其复杂,就算某个程序员获得到了全部代码,也没有能力搭建并运行起来。

小规模公司的代码基本都是业务逻辑代码,泄不泄漏可能也没有太大关系。

防止别人偷拿代码是很难的,倒不如加强企业文化,提高员工的职业素养。尊重是互相的,做到用人不疑,我想大部分人也不会以怨报德。

说说我们公司是怎么做的吧:

1. 封了网络文库、网络网盘、CSDN等网站

凡是能上传文件的网站,我们公司都封了,这样就防止员工把内部文件上传到这些网站被泄密。但是这样做的一个后果就是员工想查一些资料,在这些网站都打不开,只能用自己的手机去查了,造成了一些工作的不便。

2. 封了USB、蓝牙接口,以及光驱

凡是能从电脑上拷贝文件到外部的接口,我们公司都封了,这样员工就无法把公司的文件拷到外面了,避免了泄密。这样做的后果也给我们带来了一些工作上的不便。比如以前我们做蓝牙测试的时候,需要把测试的App拷贝到手机上旧非常困难。后来公司了解了我们的困难,允许我们提申请,经过上级领导的批准后,可以给电脑开通USB权限,但是拷贝的内容也是被公司监控,所以也只能拷贝需要的内容。申请的时候有选择开通的时间,到期后,USB权限自动关闭了。

3. 禁止将公司电脑带出公司

为了防止员工私下里想办法把公司电脑的文件拷走,公司禁止把电脑带出办公室。如果需要带电脑去客户那里,则需要向公司提出申请,申请的时候也要选择带出和带回的时间,这样基本上就杜绝了员工泄密的可能。如果员工在外出途中丢失了电脑,这就会成为一个大事件,会汇报到公司最高层,对员工个人的影响也很大。公司有一套流程专门应对这类事件。曾经我们公司有人带电脑去客户那里,跟客户吃饭喝醉了,打车回家把电脑弄丢了,引起了很大的后果,这个事经常会作为事例来教育全体员工。

4. 电脑里安装监控软件

公司的电脑里都安装有监控软件,网管可以监控到每一台电脑。员工在电脑上打印,发传真、发邮件这些活动都受到监控。打印机也能看到每个人打印、传真的内容。员工如果有泄密的行为都可以及时监控到。至于员工对着电脑拍照,公司应该也能检测到。所以公司的电脑不要做一些私人的事情,很容易被监控到。

5. 封了QQ、微信等可以传输文件的社交软件

QQ、微信这类可以传递文件的社交软件在公司的电脑上是不能安装的,也防止了员工通过这些软件把文件传输到外面。公司内部只能使用微软自带的聊天工具Lync,这个软件也不能传输文件,只能聊天。如果公司内部需要传输文件,只能用公司的服务器或者邮件。有些大的文件,只能尽量压缩,否则传输会非常不方便。

6. 禁止员工安装公司允许之外的软件

严格监控员工的软件安装列表。公司给出了允许安装的软件列表,超出范围的安装软件会被监控到,让员工删除掉。这样员工无法安装一些上传文件的软件了,防止泄密了。员工也不能随意从网络上下载安装文件,防止一些木马病毒藏在软件里,盗取公司文件。

公司防止员工泄密的手段是很多的,每年还要对员工进行安全教育,规范员工的行为。

虚拟化桌面服务器,使用虚拟桌面和瘦客户机,瘦客户机禁止usb存储。瘦客户机不能联网但可以连虚拟化服务器,服务器不能连外网。单独设立一台机器可以联网,也可以连接一台ftp虚拟机(虚拟化服务器中的FTP用于内外网共享文件),联网机器下载的东西了上传到ftp供其他桌面虚拟机使用。桌面虚拟机上传的文件需要管理员通过才能被这台外网机器看到下载。

1,不允许携带电子设备进入工作区域,进门经过金属探测。

2,公司电脑不允许连接外网。

3,封死USB等外设接口。

4,机箱锁死,防止拆硬盘。

5,安装摄像头对准每一个工位,一旦发现使用拍照设备等,进行相应处罚。

这几个只有一起用才能完全防止泄露,否则都有办法。

你去看看某研究院的一些规章。禁止笔记本等带入,不小心带入了,对不起,设备留置24小时,彻底格式化。手机,存储设备也一样禁止带入。开发机全部内网。没有WIFI,鼠标键盘全部有线,粘死。机箱上锁。USB等接口全部封掉。人员权限限制,绝大部分人员不能下载全部代码。

首先管理层面,领导要重视信息安全,然后按照iso27000系列信息安全标准去做。信息安全和物理安全是要互相配合的。办公区要根据安全级别设置不同的管理措施,信息资产要根据价值设置不同的标签,区分关键资产和非关键资产,另外信息资产只能有一个出口要经过审批后才能出去。技术层面的措施也可以用,但是不能乱用。另外开发环境安全可以参考15408的站点审查部分。

防止不了,有合作公司管理严格,我们都用手机拍照沟通,所以除非禁用手机和一切拍照设备,否则都给你拍出来。

我觉吧吧,关键是人。而不是制度。

这么说吧,光有源代码屁也不是。要是没人build都困难。别说上线和运行了。

所以,你要是选信任的人,而不是选信任的方法。那么就算别人真偷了,拿一堆源代码回去,都没办法build,有什么用?

反之,就算没有源代码。人家拍拍屁股走人。然后还他妈实现,你有什么办法?

‘伍’ 软件公司都是如何防止源码泄露的

基本上靠自觉,毕竟开发人员如果不接触代码那还开发个啥。既然接触到了代码,泄密不泄密就是自己选择的事情了,远程服务器代码不能FTP下来我就复制粘贴回来,不让复制粘贴我就截图下来,不让截图我就拍照,不让拍照我就手抄,根本不可能杜绝。

有的公司会用一些保密软件,基本上就是说开辟一个保密盘空间作为所有开发人员的地盘,可以拷出去,这个空间里面所有数据的流出都会被加密,你再拷回来又给解密了。

也有公司直接用IBM全套系统,开发测试机所有文件传输共享服务关闭只留telnet,无外网,软件下载不能,只有自带的vi,连vim都没有,远程登录过去撑死你一次就看到30行,整个机器上百兆源代码都是码农们一个字一个字打上去的,机器上满地都是大家写的各式各样开发shell脚本...同事外派出去干活看到别的码农用花花绿绿大屏幕分屏IDE神马的敲代码就哗哗淌哈喇子

‘陆’ 使用python语言如何保密源代码以防止逆向工程

大家都很忙,谁有时间看你的的烂代码!

如果真的怕泄露,别用python.

我以前做过这类事情,而且当时更严格,需要打包部署到客户的服务只在有效期内有效,超过有效期必须更新证书才行。

Python代码用任何方法都没法保证保密性,这个时候你可以考虑用一个工具“nuitka”,这个工具会把你的python源代码映射为c++然后编译为二进制,因此对方是无论如何得不到你的源代码的。

代价就是nuitka这个工具并不完美,有一些限制并不能100%完美的转换所有python代码。

1.用Cython编译python成 Windows的pyd文件或Linux的so文件,二进制文件相对安全性较高。

2.用源码混淆器把代码搞的又臭又长。。。混淆完了再用Cython编译为二进制。。。这样静态反编译逆向难度也不小。

3.同其他语言程序一样,可以对调试状态进行检测,当处于调试状态时退出程序或进入混乱代码耗费逆向工程人员心神。

4.分享一个跨平台反调试手段,检测函数运行时间,加断点会导致函数运行时间变长,也可感知正在被调试。

Python是提倡开源的,既然选择Python还是拥抱开源才好~ 都开源还担心逆向工程嘛

没有不能逆的软件。

只要汇编语言过关,逆向工程都是可以实现的,不要有其它想法。

你唯一可以做的,就是不让别人用python读取源代码而已。那样实现起来比较简单。

python 适合开发服务器程序,或者自己科研使用的程序,如果是 作为用户程序,安装到 pc 或手机上,还是 其它 c++ 或java 比较合适

1)可以把需要保护的部分用c语言实现,从而编译成so等文件,这样逆向的成本会比较高,可以防止直接打开python文件看到代码逻辑。

2)so文件通过ida等工具也是可以反汇编的,可以通过对c语言进行代码混淆,花指令等操作,提高通过ida等反汇编工具的分析难度。

3)不存在绝对无法逆向的技术手段,因此只能是看具体需求,选择具体的防逆向的技术手段。

有工具类似py2exe转成可执行程序,隐藏全部源代码,虽然bytecode还是可以反编译,但是难度大多了

1. 最稳的就是你改cpython加载代码的过程,改zip包读取最稳。

2. 借助一些加密工具在编译pyc之前进行一定的混淆,可以防君子,自我安慰一下。

商用一般都是用第一种办法,小打小闹用第二种。

可以考虑使用pymod工具,使用pymod pack 将模块加密打包,发布的时候一个模块就一个文件。

先睹为快,看看一个项目发布的时候,只有几个文件,

main.py 项目程序入口

setting.py 项目配置

apps 项目模块

plusins 项目插件目录

创建项目 pymod create demo1

cd demo1

创建模块 pymod add mod1

启动pycharm 开始编写功能模块

一个模块默认由三个文件组成

__init__.py 、 handlers.py 、param_schemas.py

业务逻辑主要在handlers.py中编写

__init__.py

from pymod.blueprint import Blueprint api = Blueprint("/mod1") from .handlers import *

param_schemas.py

schema_sfz = { "type": "object", "required": ["sfz", "nl"], "properties": { "sfz": { "type": "string", "minLength": 18, "maxLength": 18, "description": "身份证明号码" }, "nl": { "type": "integer", "minimum": 0, "maximum": 150, "description": "年龄" } } }

handlers.py

from . import api from pymod.ext import RequestHandler, params_validate,TrueResponse,FalseResponse from .param_schemas import schema_sfz from pymod.plugins import sfz_check @api.add_route('/hello') class Hello(RequestHandler): def get(self): self.write('Hello World') @params_validate(schema_sfz) def post(self): sfz = self.get_json_arg("sfz") nl =self.get_json_arg("nl") # self.write(TrueResponse(sfz=sfz, nl=nl)) if sfz_check.check_sfzmhm(sfz): self.write(TrueResponse(hint="身份证明号码验证通过")) else: self.write(FalseResponse(hint="身份证明号码验证失败"))

三、项目部署

程序调试 修改setting.py

# 开发模式下 运行的模块名称必须填写

moles = ["mod1"] moles_config ={ "mod1": { "deny_ip": "", "allow_ip": "*" } }

启动程序 python main.py

调试没有问题,进入发布模式

在项目目录下

pymod pack mod1

在target目录下生成mod1.mod文件,将其复制到apps目录中

修改setting.py

# 开发模式下 运行的模块名称必须填写

moles = []

再次运行 python main.py 测试

一切OK,系统就可以发布了。

说不能保密的,是没有研究过python的机制的。我做个一个项目,所有源代码自定义加密,运行时解密。

热点内容
不同的语言编译原理 发布:2024-11-25 01:30:37 浏览:315
c编译成c 发布:2024-11-25 01:29:12 浏览:105
飞腾编译gcc 发布:2024-11-25 01:28:32 浏览:153
服务器文档设备存储需要检查什么 发布:2024-11-25 01:27:10 浏览:342
名词算法 发布:2024-11-25 01:24:54 浏览:675
我的电脑玩cf卡该换什么配置 发布:2024-11-25 01:20:38 浏览:871
云加密服务是什么情况 发布:2024-11-25 01:18:16 浏览:881
租云服务器会提供ip吗 发布:2024-11-25 01:18:13 浏览:451
安卓原生刷机包在哪里下载 发布:2024-11-25 01:13:16 浏览:298
安卓怎么改字体 发布:2024-11-25 01:12:32 浏览:477