그래서 제 Excel-VBA 프로젝트 비밀번호가 쉽게 깨질 수 있습니다...다른 옵션은 무엇입니까?
이제 VBA 코드를 잠그고 암호를 보호하는 표준 방법에 대한 쉬운 해결 방법이 있다는 것을 알았으므로 코드를 보다 효과적으로 보호하는 방법으로 이동하려고 합니다.저는 고객에게 Excel 기반 도구를 제공할 예정이지만, 가장 게으른 해커들만 저지할 수 있는 단순한 성가신 유형의 보호 이상의 것을 원합니다.
Excel-VBA에 옵션이 있습니까, 아니면 우리가 정말로 별도의 애플리케이션을 컴파일하고 Excel 기반 인터페이스를 잊어야 합니까?
가장 쉽고 효율적인 방법은 VBA 코드를 컴파일된 VB6 Com/Automation addin으로 이동하는 것입니다.
또는 성능이 중요하지 않은 경우 .Net(난독화 기능 포함) 솔루션을 고려하는 것이 좋습니다.
실제로 VBA 난독화기는 알고리즘의 구조를 변경하지 않고 원래 알고리즘으로 추적하여 복구할 수 있기 때문에 VBA 코드를 보호하지 않습니다.
VBA 코드를 VB6로 변환하면 응용 프로그램이 32비트 Excel로 제한되며(VB6에는 64비트 버전이 없음) https://www.vb-decompiler.org/ 과 같은 VB 디컴파일러로 압축 해제할 수 있습니다.
VBA 코드를 VB로 변환하는 중입니다.NET도 완벽한 솔루션은 아닙니다.NET에는 컴파일된 코드를 변환할 수 있는 '반사' 메커니즘이 있습니다.원본 소스 코드로 NET 어셈블리.
VBA 코드를 C/C++로 변환하면 매우 효과적인 보호 기능이 될 수 있지만 C/C++과 VBA는 매우 다른 프로그래밍 언어이기 때문에 VBA 코드를 C/C++로 변환하는 것은 어렵고 오류가 발생하기 쉬우며 일반적으로 많은 시간과 노력을 들일 가치가 없습니다.
VBA 코드를 C 언어 코드로 변환한 다음 DLL로 컴파일하는 VbaCompiler for Excel(http://vbacompiler.com )이라는 도구가 있습니다.이 도구가 제공하는 보호 수준은 VBA 코드를 C/C++로 변환하는 것과 유사하지만 이러한 프로세스에 필요한 많은 양의 수동 작업은 필요하지 않습니다.
또 다른 방법은 Access에서 Excel 개체에 대해 코드를 작성한 다음 액세스 파일을 .mde http://www.blog.methodsinexcel.co.uk/ ?s=Access+MDB Poor로 만들지만 cheep ;-)입니다.
다른 언어로 변환할 필요 없음 - www.vbsobfuscator.com 을 통해 대부분의 VBA 코드를 난독화할 수 있어야 합니다 [참고: archive.org 링크]
언급URL : https://stackoverflow.com/questions/1063155/so-my-excel-vba-project-password-can-easily-be-cracked-what-are-other-options
'programing' 카테고리의 다른 글
mariadb 기본값 'datadir' 변경 후 서비스가 실행되지 않습니다.Redhat 서버에서 Linux 7.7에는 Mariadb(10.4) galera 클러스터가 있습니다. (0) | 2023.08.08 |
---|---|
Swift에서 NSNotification 관찰자를 제거할 위치는 어디입니까? (0) | 2023.08.08 |
도커 분리 모드 (0) | 2023.08.08 |
Spring Boot에서 HTTP Post maxPostSize 증가 (0) | 2023.08.08 |
JQuery로 CTRL+S를 캡처하는 최고의 크로스 브라우저 방법은 무엇입니까? (0) | 2023.08.08 |