目錄
回复内容:
首頁 後端開發 php教程 大型公司里面如何防止程序员接触到核心代码?

大型公司里面如何防止程序员接触到核心代码?

Jul 06, 2016 pm 01:52 PM
c c# c++ java php

像BAT这类公司,假如我是刚刚入职的程序员,现在公司要我做一个专题模块,做好了要集成测试,这个专题模块要用户登录才能用,那么必须include这个Passport模块,而这个模块的源代码里面肯定有一些加密算法,私钥等等信息,不能让我们这些小程序员看到里面的代码,那么具体怎么做测试呢?他们如何保证核心业务代码的安全?

回复内容:

像BAT这类公司,假如我是刚刚入职的程序员,现在公司要我做一个专题模块,做好了要集成测试,这个专题模块要用户登录才能用,那么必须include这个Passport模块,而这个模块的源代码里面肯定有一些加密算法,私钥等等信息,不能让我们这些小程序员看到里面的代码,那么具体怎么做测试呢?他们如何保证核心业务代码的安全?

大公司一般都把passport做成服务了。你只能看到接口,不能看到实现~

给你个封装好的dll和头文件就可以
dll已经去掉符号表了 你也看不到源码
有头文件+dll(或导出的静态文件lib)可以编译了 你哪里还看得到源码

不知道为啥被踩了下
现在的程序员已经分不出来编译和外部服务如RPC调用了吗
分不出来的话 当我白说

BAT里据我所知 T/B的核心代码大部分都是C++的,因为实时性更好,A家的主力是Java。
用C++做核心有几个好处和必不可少的场景
1) 游戏,图形图像的渲染,想象一个游戏玩的过程中卡了50ms,频繁的丢帧是多么苦逼的一个事
2) 实时调用,想象做导航的过程中,车速100公里结果服务器端GC了,数据延迟100ms再发送多么痛苦一个事吧。

会C++的话,你就知道我说的是啥意思了。
内核大部分是C++写的,无他,知识产权保护的好,想想自己做了一个没有JNI的Android App,分分钟被对手逆向的事吧。
加密算法也一样,远程调用和服务只使用非准实时的情况,对数据敏感的肯定是带着头文件和库一起编译的

大公司并不怕程序员接触到核心代码,你所认为的一些核心代码,在公司保密级别里面,可能密级并不高。他们更注重的,是系列化的管理规范。
1、稍大一点的公司,都会有一整套规范的权限控制管理,你什么级别,能下什么代码,能连什么库,都有相应的规定。
2、保密协议之类的都会让你签吧?防火防盗防商业间谍,协议只是一部分,真正的机密在企业发展部(类似部门)手里。
3、具体到开发里你说的模块,如果是 C++系的,跟楼上无辜被踩的同学说的一样,给你 dll 或者lib 你自己拿去编译着玩就行了。Java的话,会把这些模块封装成服务,再或者搭建成 Saas 或者是 Paas,你自己去调就行了,一般中大型的公司都会搭着这类的开发平台。

建议看一下RPC,大型公司肯定会剥离各个模块,模块间使用RPC调用,调用时不用关心其他模块的内部逻辑,也看不到其他模块的代码。

我厂是通用组件由专门负责组件的部门提供,给你的是已经编译好的库,你访问不到库的代码。
要是你发现库有bug或者疑似有bug自己是没法追踪的,拉个群和有关部门撕逼去吧。

百度、阿里、腾讯之类的大公司用 Git 吗?他们如何管理源代码?
https://www.zhihu.com/question/22438484
如何看待为了防止代码泄漏而限制员工上网? 公司IT如何管理和架构才能防止代码外泄?
https://www.zhihu.com/question/19983270

很有参考意义

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Golang和C:並發與原始速度 Golang和C:並發與原始速度 Apr 21, 2025 am 12:16 AM

Golang在並發性上優於C ,而C 在原始速度上優於Golang。 1)Golang通過goroutine和channel實現高效並發,適合處理大量並發任務。 2)C 通過編譯器優化和標準庫,提供接近硬件的高性能,適合需要極致優化的應用。

C和XML:探索關係和支持 C和XML:探索關係和支持 Apr 21, 2025 am 12:02 AM

C 通過第三方庫(如TinyXML、Pugixml、Xerces-C )與XML交互。 1)使用庫解析XML文件,將其轉換為C 可處理的數據結構。 2)生成XML時,將C 數據結構轉換為XML格式。 3)在實際應用中,XML常用於配置文件和數據交換,提升開發效率。

Python vs.C:您的項目選擇哪種語言? Python vs.C:您的項目選擇哪種語言? Apr 21, 2025 am 12:17 AM

選擇Python還是C 取決於項目需求:1)如果需要快速開發、數據處理和原型設計,選擇Python;2)如果需要高性能、低延遲和接近硬件的控制,選擇C 。

IIS和PHP的兼容性:深度潛水 IIS和PHP的兼容性:深度潛水 Apr 22, 2025 am 12:01 AM

IIS和PHP可以兼容,通過FastCGI實現。 1.IIS通過配置文件將.php文件請求轉發給FastCGI模塊。 2.FastCGI模塊啟動PHP進程處理請求,提高性能和穩定性。 3.實際應用中需注意配置細節、錯誤調試和性能優化。

Python vs. C:了解關鍵差異 Python vs. C:了解關鍵差異 Apr 21, 2025 am 12:18 AM

Python和C 各有優勢,選擇應基於項目需求。 1)Python適合快速開發和數據處理,因其簡潔語法和動態類型。 2)C 適用於高性能和系統編程,因其靜態類型和手動內存管理。

在Python和C之間進行選擇:適合您的語言 在Python和C之間進行選擇:適合您的語言 Apr 20, 2025 am 12:20 AM

Python適合初學者和數據科學,C 適用於系統編程和遊戲開發。 1.Python簡潔易用,適用於數據科學和Web開發。 2.C 提供高性能和控制力,適用於遊戲開發和系統編程。選擇應基於項目需求和個人興趣。

Golang vs.C:性能和速度比較 Golang vs.C:性能和速度比較 Apr 21, 2025 am 12:13 AM

Golang適合快速開發和並發場景,C 適用於需要極致性能和低級控制的場景。 1)Golang通過垃圾回收和並發機制提升性能,適合高並發Web服務開發。 2)C 通過手動內存管理和編譯器優化達到極致性能,適用於嵌入式系統開發。

C:死亡還是簡單地發展? C:死亡還是簡單地發展? Apr 24, 2025 am 12:13 AM

1)c relevantduetoItsAverity and效率和效果臨界。 2)theLanguageIsconTinuellyUped,withc 20introducingFeaturesFeaturesLikeTuresLikeSlikeModeLeslikeMeSandIntIneStoImproutiMimproutimprouteverusabilityandperformance.3)

See all articles