


How to prevent programmers from accessing core code in large companies?
For a company like BAT, if I am a programmer who has just joined the job, and now the company wants me to make a special module, and after it is completed, it needs to be integrated and tested. This special module requires user login to use it, then the Passport module must be included. There must be some encryption algorithms, private keys and other information in the source code of this module. We young programmers cannot see the code inside. So how to test it specifically? How do they ensure the security of their core business code?
Reply content:
For a company like BAT, if I am a programmer who has just joined the job, and now the company wants me to make a special module, and after it is completed, it needs to be integrated and tested. This special module requires user login to use it, then the Passport module must be included. There must be some encryption algorithms, private keys and other information in the source code of this module. We young programmers cannot see the code inside. So how to test it specifically? How do they ensure the security of their core business code?
Large companies generally turn passport into a service. You can only see the interface, not the implementation~
Just give you a packaged dll and header file
The dll has removed the symbol table and you can’t see the source code
Where can you compile the dll with the header file (or the exported static file lib)? You can also see the source code
I don’t know why it was stepped down
Can’t programmers nowadays distinguish between compilation and external services such as RPC calls?
As far as I know in BAT, most of the core code of T/B is C, because the real-time performance is better, and the main force of A family is Java.
1) Games, graphics and image rendering, imagine a game that is stuck for 50ms during play, and how painful it is to lose frames frequently. Thing
2) Real-time call, imagine that in the process of navigation, the vehicle speed is 100 kilometers, and the server side GCs, and the data is delayed by 100ms before sending, how painful it is.
If you know C, you will know what I mean.
The same goes for the encryption algorithm. Remote calls and services are only used in non-quasi-real-time situations. Those that are sensitive to data must be compiled with header files and libraries
1. Slightly larger companies will have a complete set of standardized permission control management. There are corresponding regulations for your level, what code you can download, and what libraries you can connect to.
2. You will be asked to sign confidentiality agreements and the like, right? Fire prevention, theft prevention and commercial espionage, the agreement is only part of it, the real secrets are in the hands of the Enterprise Development Department (similar department).
3. Regarding the module you mentioned in development, if it is of C series, it is the same as what the innocent classmate above said. I will give you a dll or lib and you can compile it and play with it yourself. In the case of Java, these modules will be encapsulated into services, or built into Saas or Paas. You can adjust them yourself. Generally, medium and large companies will use this type of development platform.
In our factory, general components are provided by the department responsible for components. What is provided to you is a compiled library, and you cannot access the code of the library.
If you find that there is a bug in the library or it is suspected that there is a bug and you cannot track it down, start a group and argue with the relevant departments.
https://www.zhihu.com/question/22438484
How do you think about restricting employees from accessing the Internet to prevent code leaks? How should company IT be managed and structured to prevent code leaks?
https://www .zhihu.com/question/19983270
Very useful for reference

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Golang is better than C in concurrency, while C is better than Golang in raw speed. 1) Golang achieves efficient concurrency through goroutine and channel, which is suitable for handling a large number of concurrent tasks. 2)C Through compiler optimization and standard library, it provides high performance close to hardware, suitable for applications that require extreme optimization.

IIS and PHP are compatible and are implemented through FastCGI. 1.IIS forwards the .php file request to the FastCGI module through the configuration file. 2. The FastCGI module starts the PHP process to process requests to improve performance and stability. 3. In actual applications, you need to pay attention to configuration details, error debugging and performance optimization.

Golang is suitable for rapid development and concurrent scenarios, and C is suitable for scenarios where extreme performance and low-level control are required. 1) Golang improves performance through garbage collection and concurrency mechanisms, and is suitable for high-concurrency Web service development. 2) C achieves the ultimate performance through manual memory management and compiler optimization, and is suitable for embedded system development.

Choosing Python or C depends on project requirements: 1) If you need rapid development, data processing and prototype design, choose Python; 2) If you need high performance, low latency and close hardware control, choose C.

C isnotdying;it'sevolving.1)C remainsrelevantduetoitsversatilityandefficiencyinperformance-criticalapplications.2)Thelanguageiscontinuouslyupdated,withC 20introducingfeatureslikemodulesandcoroutinestoimproveusabilityandperformance.3)Despitechallen

Python and C each have their own advantages, and the choice should be based on project requirements. 1) Python is suitable for rapid development and data processing due to its concise syntax and dynamic typing. 2)C is suitable for high performance and system programming due to its static typing and manual memory management.

C# is widely used in enterprise-level applications, game development, mobile applications and web development. 1) In enterprise-level applications, C# is often used for ASP.NETCore to develop WebAPI. 2) In game development, C# is combined with the Unity engine to realize role control and other functions. 3) C# supports polymorphism and asynchronous programming to improve code flexibility and application performance.

How to deploy a C# .NET app to Azure or AWS? The answer is to use AzureAppService and AWSElasticBeanstalk. 1. On Azure, automate deployment using AzureAppService and AzurePipelines. 2. On AWS, use Amazon ElasticBeanstalk and AWSLambda to implement deployment and serverless compute.
