- Published on
Creating a Proxy Server in Python
- Authors
- Name
- Carter Speerschneider
Forming a Group
In my linear algebra class, learned about various mathematical concepts including matrices, row operations, and elimination algorithms for solving systems of equations. We were tasked by our professor to come up with real world applications for linear algebra. Next, we had to form into groups with other students and we had to get to know each other a long the way.
Coming up with a Project Idea
When it comes to web security, there is a continuous need for security measures to enhance the safety and confidence in daily engineering operations. Therefore, the engineering industry we are targeting is security engineering. We chose to apply what we learned in our classes to web security, specifically, enhancing the security of web traffic. HTTP traffic is viewable in plain-text by default, and the industry standard is to use HTTPS that uses a secure protocol called TLS. However, security engineering is about trying different approaches and seeing what is appropriate for a specific context. For our Linear Algebra Application project, we decided to build a web proxy server that would obfuscate web requests using the Hill Cipher.
This cipher integrates matrices and modular arithmetic in order to encode and decode plain-text (GeeksforGeeks, n.d.-b; Tutorialspoint, n.d.). We decided to do this project because we thought it was an appropriate application of linear algebra that uses concepts we've covered in class (Landolf, 2018). It would also allow us to learn programming libraries, networking, and various other computing topics. Because we are composed of computer science majors, picking a programming project was sufficient.
In order to complete this project as a team, we are going to use the version control platform, GitHub. This platform allows us to share and store ideas in an integrated wiki, and it allows us to keep track of version changes to our software program (GitHub, 2025). Also, We can easily share and document our project this way. We will likely use the python programming language because of its vast standard library and relevance in industry (GeeksforGeeks, n.d.-a).
References
Application of Linear Algebra in Cryptography—Judithlopez—S20216454W |
PDF | Cryptography | Cipher. (n.d.). Scribd. Retrieved September 25, 2025, from https://www.scribd.com/document/583117673/APPLICATION-OF-LINEAR-ALGEBRA-IN-CRYPTOGRAPHY-JUDITHLOPEZ-S20216454W
Creating a Proxy Webserver in Python | Set 1. (16:34:13+00:00). GeeksforGeeks. https://www.geeksforgeeks.org/python/creating-a-proxy-webserver-in-python-set-1/
Cryptography. (n.d.). Retrieved September 25, 2025, from https://sites.math.washington.edu/~king/coursedir/m308a01/Projects/Cryptography.htm
Cryptography—Hill Cipher. (n.d.). Retrieved September 25, 2025, from https://www.tutorialspoint.com/cryptography/cryptography_hill_cipher.htm
GitHub · Build and ship software on a single, collaborative platform. (2025). GitHub. https://github.com/
Hill Cipher. (18:00:34+00:00). GeeksforGeeks. https://www.geeksforgeeks.org/dsa/hill-cipher/
Home. (n.d.). OpenCV. Retrieved September 25, 2025, from https://opencv.org/
http.server—HTTP servers. (n.d.). Python Documentation. Retrieved September 25, 2025, from https://docs.python.org/3/library/http.server.html
Joseph Landolf (Director). (2018, December 1). Linear Algebra in Cryptography [Video recording]. https://www.youtube.com/watch?v=S_2MV3ncHj0
Linear Algebra in Economics | Intro to Mathematical Economics Class Notes. (n.d.). Retrieved September 25, 2025, from https://fiveable.me/introduction-to-mathematical-economics/unit-2
News, A. B. C. (n.d.). Tyler Robinson said he killed Charlie Kirk because he “spreads too much hate”: Officials. ABC News. Retrieved September 25, 2025, from https://abcnews.go.com/US/tyler-robinson-set-face-formal-charges-shooting-death/story?id=125614396
NumPy user guide—NumPy v2.3 Manual. (n.d.). Retrieved September 25, 2025, from https://numpy.org/doc/stable/user/index.html
Practical Cryptography. (n.d.). Retrieved September 25, 2025, from http://practicalcryptography.com/ciphers/hill-cipher/
The Complete Guide to Python WebSocket Library (2025 Edition)—VideoSDK. (n.d.). Videosdk.Live. Retrieved September 25, 2025, from https://www.videosdk.live/developer-hub/websocket/python-websocket-library