RemoteAssistance
like TeamViewer(JAVA)
https://dydtjr1128.github.io/RemoteAssistance-JAVA/.
키보드, 마우스 후킹(JNI)을 이용한 원격지원 프로그램
- Reduce network traffic
- Improve image compress speed(ex. double buffering, grid image)
- Encryption data
- Compare using SIMD
- Communication with central server
- GUI
- Send System sound
- Multi user session
- Chatting & Voice chat
- File manager
- Install program
- Service registration(Windows)
- Support Linux
- Plan a connection flow
- client - broker - host
- JAVA의 BufferedImage에 이미지 데이터를 담는데 GC의 처리속도보다 힙에 쌓이는 속도가 빨라 메모리 과다 점유 문제가 있어 C++로 재개발
- https://github.com/dydtjr1128/RemoteAssistance-Cpp
이번 원격지원 프로그램을 만들어보면서 네트워크 적인 측면에서나 스크린 캡쳐부분이 굉장히 취약한 부분이 많았다는 것을 알 수 있었다.