Skip to content

Commit 26bc671

Browse files
committed
Science Commit 5.
1 parent e4f3a3b commit 26bc671

34 files changed

Lines changed: 1676 additions & 7 deletions

.preview-serve/chat

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/home/mearvk/IdeaProjects/Java.Web.Server.Telnet.Front.Java.21/modules/chat/servlets/servlet/src/main/webapp

.preview-serve/index.html

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,17 @@
2424
.gray { background: #4b5563; color: #e5e7eb; }
2525
.creme { background: #f5f0e0; color: #333; }
2626
.white { background: #f8f8f8; color: #333; }
27+
.white-red { background: #fff; color: #cc0000; border: 1px solid #cc0000; }
28+
.deep-blue-purple { background: #0a0e1a; color: #6b8aff; border: 1px solid #1e2a4a; }
29+
.seacoast-teal { background: #0a1a1c; color: #00727A; border: 1px solid #1e4a4d; }
2730
.section { margin: 1rem 0; padding: 1rem; background: #1a1a1a; border-radius: 8px; border: 1px solid #333; }
2831
.affirmation { color: #d4af37; font-style: italic; margin: 1rem 0; padding: 1rem; border-left: 3px solid #d4af37; }
2932
code { background: #222; padding: 2px 6px; border-radius: 3px; font-size: 0.9rem; }
3033
</style></head><body>
3134

3235
<h1>NitroWebExpress&trade; &mdash; Module Preview Server</h1>
3336
<p style="color:#999;">JSP server-side code won't execute (shows as raw text). CSS/JS/layout works normally.<br>
34-
Serving from: <code>C:\Users\Max Rupplin\IdeaProjects\Java.Web.Server.Telnet.Front.Java.21</code></p>
37+
Serving from: <code>/home/mearvk/IdeaProjects/Java.Web.Server.Telnet.Front.Java.21</code></p>
3538

3639
<div class="affirmation">
3740
US well in condition. US well loved. US is well in authority of command of the United States.
@@ -52,6 +55,7 @@ <h2>All Modules</h2>
5255
<tr><td><a href="/california-ncsu/index.jsp">/california-ncsu/</a></td><td><span class="theme-badge wolfpack-red">Wolfpack Red</span></td><td>49217</td><td>✓ Available</td></tr>
5356
<tr><td><a href="/california-nsa/index.jsp">/california-nsa/</a></td><td><span class="theme-badge black">Black</span></td><td>49212</td><td>✓ Available</td></tr>
5457
<tr><td><a href="/california-unc/index.jsp">/california-unc/</a></td><td><span class="theme-badge carolina-blue">Carolina Blue</span></td><td>49218</td><td>✓ Available</td></tr>
58+
<tr><td><a href="/chat/index.jsp">/chat/</a></td><td><span class="theme-badge deep-blue-purple">Deep Blue Purple</span></td><td>49230</td><td>✓ Available</td></tr>
5559
<tr><td><a href="/defined/index.jsp">/defined/</a></td><td><span class="theme-badge dark-gray">Dark Gray</span></td><td>49220</td><td>✓ Available</td></tr>
5660
<tr><td><a href="/emeter/index.jsp">/emeter/</a></td><td><span class="theme-badge light-blue">Light Blue</span></td><td>49216</td><td>✓ Available</td></tr>
5761
<tr><td><a href="/futures/index.jsp">/futures/</a></td><td><span class="theme-badge red">Red</span></td><td>5000</td><td>✓ Available</td></tr>
@@ -60,6 +64,8 @@ <h2>All Modules</h2>
6064
<tr><td><a href="/gray85-registry/index.jsp">/gray85-registry/</a></td><td><span class="theme-badge crème">Crème</span></td><td>10085</td><td>✓ Available</td></tr>
6165
<tr><td><a href="/languages/index.jsp">/languages/</a></td><td><span class="theme-badge white">White</span></td><td></td><td>✓ Available</td></tr>
6266
<tr><td><a href="/library/index.jsp">/library/</a></td><td><span class="theme-badge cardinal-red">Cardinal Red</span></td><td>49214</td><td>✓ Available</td></tr>
67+
<tr><td><a href="/spectrum-tandem/index.jsp">/spectrum-tandem/</a></td><td><span class="theme-badge white-red">White Red</span></td><td>49222</td><td>✓ Available</td></tr>
68+
<tr><td><a href="/uncw/index.jsp">/uncw/</a></td><td><span class="theme-badge seacoast-teal">SeaCoast Teal</span></td><td>49231</td><td>✓ Available</td></tr>
6369
<tr><td><a href="/vietnam/index.jsp">/vietnam/</a></td><td><span class="theme-badge light-brown">Light Brown</span></td><td>49215</td><td>✓ Available</td></tr>
6470
</tbody></table>
6571

@@ -193,6 +199,9 @@ <h2>Module Web Frontends (Tomcat 8080)</h2>
193199
<tr><td>Black Belt</td><td><a href="http://localhost:8080/blackbelt/">http://localhost:8080/blackbelt/</a></td><td><span class="theme-badge black">Black</span></td><td></td></tr>
194200
<tr><td>Languages</td><td><a href="http://localhost:8080/languages/">http://localhost:8080/languages/</a></td><td><span class="theme-badge white">White</span></td><td></td></tr>
195201
<tr><td>Brarner.M.Alete</td><td><a href="http://localhost:8080/brarner.m.alete/">http://localhost:8080/brarner.m.alete/</a></td><td><span class="theme-badge blue">Presidential Blue</span></td><td>49152</td></tr>
202+
<tr><td>SpectrumTandem™</td><td><a href="http://localhost:8080/spectrum-tandem/">http://localhost:8080/spectrum-tandem/</a></td><td><span class="theme-badge white-red">White Red</span></td><td>49222</td></tr>
203+
<tr><td>NWE Chat™</td><td><a href="http://localhost:8080/chat/">http://localhost:8080/chat/</a></td><td><span class="theme-badge deep-blue-purple">Deep Blue Purple</span></td><td>49230</td></tr>
204+
<tr><td>UNCW™</td><td><a href="http://localhost:8080/uncw/">http://localhost:8080/uncw/</a></td><td><span class="theme-badge seacoast-teal">SeaCoast Teal</span></td><td>49231</td></tr>
196205
</tbody></table>
197206
</div>
198207

.preview-serve/spectrum-tandem

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/home/mearvk/IdeaProjects/Java.Web.Server.Telnet.Front.Java.21/modules/spectrum-tandem/servlets/servlet/src/main/webapp

.preview-serve/uncw

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/home/mearvk/IdeaProjects/Java.Web.Server.Telnet.Front.Java.21/modules/uncw/servlets/servlet/src/main/webapp

configuration/masquerade-modules.xml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,4 +184,62 @@
184184
<description>Stanford Library interface. AI-enhanced catalog search via Strernary™ port 20000. SearchWorks catalog, digital collections, resource requests.</description>
185185
</module>
186186

187+
<!-- modules/spectrum-tandem — SpectrumTandem™ Dolyene Spectrum -->
188+
189+
<module id="SpectrumTandem">
190+
<name>SpectrumTandem™</name>
191+
<port>49222</port>
192+
<masquerade-aware>true</masquerade-aware>
193+
<strernary-capable>true</strernary-capable>
194+
<strernary-hardened>true</strernary-hardened>
195+
<class>source.SpectrumTandemServer</class>
196+
<trust-level>9.5</trust-level>
197+
<source>modules/spectrum-tandem</source>
198+
<block>NC Socialist-College</block>
199+
<protocol>SPECTRUM_TANDEM</protocol>
200+
<handshake>SPECTRUM_TANDEM|READY|port=49222|installer=Max Rupplin</handshake>
201+
<items>dolyene,spectrum,radix,tandem,int-discipline,pointer,indirection,county,caliber,specialness</items>
202+
<verbs>DEFINE,LOOKUP,RADIX,SPECTRUM,COUNTY,REVISE,ADD,HISTORY,WORDBANK,SEARCH</verbs>
203+
<description>Dolyene spectrum of int discipline. Word bank, county precedent (full capitalized term), revisions, pointers/indirections. AI-enhanced via Strernary™ port 20000. Installer ID Tech™: Max Rupplin.</description>
204+
</module>
205+
206+
<!-- modules/chat — NWE Chat™ Encrypted Communication -->
207+
208+
<module id="NWEChat">
209+
<name>NWE Chat™</name>
210+
<port>49230</port>
211+
<masquerade-aware>true</masquerade-aware>
212+
<strernary-capable>true</strernary-capable>
213+
<strernary-hardened>true</strernary-hardened>
214+
<class>source.ChatServer</class>
215+
<trust-level>9.5</trust-level>
216+
<source>modules/chat</source>
217+
<block>NC Socialist-College</block>
218+
<protocol>NWE_CHAT</protocol>
219+
<handshake>NWE_CHAT|READY|port=49230|encryption=DH-2048+RSA-2048+AES-256-GCM</handshake>
220+
<items>user,message,file,voice,federation,rank,admin,settings</items>
221+
<verbs>REGISTER,LOGIN,MSG,BROADCAST,ENCRYPT,FILE,VOICE,FEDERATE,ADMIN</verbs>
222+
<encryption>DH-2048,RSA-2048,AES-256-GCM</encryption>
223+
<description>Encrypted chat. DH-2048/RSA-2048/AES-256-GCM. Federation (5 servers), file transfer (25MB), voice notes. Concealment 3 rank at 200+ connects. Gold Harvard Certificate at 300+. Ethics: We conceal God but do not work for Her. Installer ID Tech™: Max Rupplin.</description>
224+
</module>
225+
226+
<!-- modules/uncw — UNCW™ Wilmington at the Coast -->
227+
228+
<module id="UNCW">
229+
<name>UNCW™</name>
230+
<port>49231</port>
231+
<masquerade-aware>true</masquerade-aware>
232+
<strernary-capable>true</strernary-capable>
233+
<strernary-hardened>true</strernary-hardened>
234+
<class>source.UNCWServer</class>
235+
<trust-level>9.5</trust-level>
236+
<source>modules/uncw</source>
237+
<block>NC Socialist-College</block>
238+
<protocol>UNCW</protocol>
239+
<handshake>UNCW|READY|port=49231|colleges=CS,MarineBiology,Education,Business,ArtsSciences,Health,Engineering</handshake>
240+
<items>user,student,chancellor,message,file,audio,national-id,profile,resume,note</items>
241+
<verbs>REGISTER,LOGIN,CHANCELLOR_LOGIN,MSG,UPLOAD,DOWNLOAD,SEND_FILE,SET_NATIONAL_ID,PROFILE,VIEW_PROFILE,CHANCELLOR_NOTE</verbs>
242+
<description>UNCW Wilmington at the Coast of NC. CS Club, colleges, chancellors (current+past, max 2000), file sharing (80MB), audio playback, messaging (10 free/month), National ID verification, profiles/resumes. Installer ID Tech™: Max Rupplin.</description>
243+
</module>
244+
187245
</masquerade-modules>

configuration/port-2000-directory-config.xml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,24 @@
6060
<require-national-id>false</require-national-id>
6161
<description>Communicator™ chat server</description>
6262
</port-49199>
63+
64+
<port-49222>
65+
<enabled>true</enabled>
66+
<require-national-id>false</require-national-id>
67+
<description>SpectrumTandem™ dolyene spectrum of int discipline server</description>
68+
</port-49222>
69+
70+
<port-49230>
71+
<enabled>true</enabled>
72+
<require-national-id>false</require-national-id>
73+
<description>NWE Chat™ encrypted communication server (DH-2048/RSA-2048/AES-256-GCM)</description>
74+
</port-49230>
75+
76+
<port-49231>
77+
<enabled>true</enabled>
78+
<require-national-id>false</require-national-id>
79+
<description>UNCW™ Wilmington CS club, colleges, chancellors, file sharing</description>
80+
</port-49231>
6381
</services>
6482

6583
<!-- Rank 4 JWSTNJ21 server registration via public.key -->

configuration/strernary-protocol.xml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@
6161
<module>DukeUniversityServer</module>
6262
<module>StanfordLibraryServer</module>
6363
<module>StrernaryDirectoryServer</module>
64+
<module>SpectrumTandemServer</module>
65+
<module>ChatServer</module>
66+
<module>UNCWServer</module>
6467
</used-by>
6568
</message>
6669

@@ -77,6 +80,10 @@
7780
<example>ASK|NSA SEARCH category=vulnerability context=cyber_incidents</example>
7881
<example>ASK|DUKE SEARCH subject=mathematics context=courses</example>
7982
<example>ASK|LIBRARY SEARCH title=algorithms context=catalog</example>
83+
<example>ASK|SPECTRUM_TANDEM SEARCH term=dolyene context=word_bank</example>
84+
<example>ASK|SPECTRUM_TANDEM DOLYENE term=radix</example>
85+
<example>ASK|CHAT GEO RESOLVE ip=192.168.1.1</example>
86+
<example>ASK|UNCW VERIFY NATIONAL_ID id=12345 user=testuser</example>
8087
<response>
8188
<format>{inference_result} (may include confidence score)</format>
8289
</response>
@@ -86,6 +93,9 @@
8693
<module>CaliforniaNSAServer (SEARCH command)</module>
8794
<module>DukeUniversityServer (QUERY command)</module>
8895
<module>StanfordLibraryServer (SEARCH command)</module>
96+
<module>SpectrumTandemServer (SPECTRUM, SEARCH commands)</module>
97+
<module>ChatServer (GEO RESOLVE command)</module>
98+
<module>UNCWServer (VERIFY NATIONAL_ID command)</module>
8999
</used-by>
90100
</message>
91101

@@ -178,6 +188,25 @@
178188
<module id="StanfordLibrary" port="49214" query-prefix="LIBRARY" db="nwe_library"/>
179189
<module id="Futures" port="5000" query-prefix="FUTURES" db="nwe_futures"/>
180190
<module id="CalendarD44" port="49200" query-prefix="CAL" db="nwe_calendar_d44"/>
191+
<module id="SpectrumTandem" port="49222" query-prefix="SPECTRUM_TANDEM" db="nwe_spectrum_tandem"
192+
trust-level="9.5" hardened="true" protocol="SPECTRUM_TANDEM"
193+
handshake="SPECTRUM_TANDEM|READY|port=49222|installer=Max Rupplin"
194+
verbs="DEFINE,LOOKUP,RADIX,SPECTRUM,COUNTY,REVISE,ADD,HISTORY,WORDBANK,SEARCH"
195+
items="dolyene,spectrum,radix,tandem,int-discipline,pointer,indirection,county,caliber,specialness"
196+
username-field="author_id" ip-source="session.ip"/>
197+
<module id="NWEChat" port="49230" query-prefix="CHAT" db="nwe_chat"
198+
trust-level="9.5" hardened="true" protocol="NWE_CHAT"
199+
handshake="NWE_CHAT|READY|port=49230|encryption=DH-2048+RSA-2048+AES-256-GCM"
200+
verbs="REGISTER,LOGIN,MSG,BROADCAST,ENCRYPT,FILE,VOICE,FEDERATE,ADMIN"
201+
items="user,message,file,voice,federation,rank,admin,settings"
202+
username-field="username" ip-source="session.ip"
203+
encryption="DH-2048,RSA-2048,AES-256-GCM"/>
204+
<module id="UNCW" port="49231" query-prefix="UNCW" db="nwe_uncw"
205+
trust-level="9.5" hardened="true" protocol="UNCW"
206+
handshake="UNCW|READY|port=49231|colleges=CS,MarineBiology,Education,Business,ArtsSciences,Health,Engineering"
207+
verbs="REGISTER,LOGIN,CHANCELLOR_LOGIN,MSG,UPLOAD,DOWNLOAD,SEND_FILE,SET_NATIONAL_ID,PROFILE,VIEW_PROFILE,CHANCELLOR_NOTE"
208+
items="user,student,chancellor,message,file,audio,national-id,profile,resume,note"
209+
username-field="username" ip-source="session.ip"/>
181210
</registered-modules>
182211

183212
<!-- ═══════════════════════════════════════════════════════════════
Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
# NWE Chat™ — Encrypted Communication Module
2+
3+
**NitroWebExpress™ Module**
4+
Author: Maximilian Eric Alexander Rupplin von Keffikon — MEARVK LLC
5+
Installer Tech ID: Max Rupplin
6+
Port: 49230
7+
Database: nwe_chat
8+
Context: /chat
9+
Ethics: We conceal God but do not work for Her.
10+
11+
---
12+
13+
## Purpose
14+
15+
Full-featured encrypted chat server with:
16+
- **Account Management** — Register, login, change username, delete account
17+
- **End-to-End Encryption** — DH-2048 (RFC 3526 Group 14) + RSA-2048 + AES-256-GCM
18+
- **Direct Messaging** — Encrypted user↔user communication
19+
- **Broadcast** — Send to all connected users
20+
- **File Transfer** — Send files up to 25MB with E2E encryption
21+
- **Voice Notes** — Microphone recording up to 120s
22+
- **Federation** — Connect to up to 5 external NWE Chat servers (Max Rupplin design)
23+
- **Rank System** — Concealment 3 at 200+ federated connects, Gold Harvard Certificate at 300+
24+
- **Admin Panel** — User management, ban/unban, logs, IP/Geo tracking
25+
- **Chat Logging** — All messages stored with IPs and timestamps
26+
- **Settings** — Reviewable, settable, revisable in XML and database
27+
28+
---
29+
30+
## Encryption
31+
32+
| Layer | Algorithm | Key Size | Purpose |
33+
|-------|-----------|----------|---------|
34+
| Key Exchange | Diffie-Hellman | 2048-bit | Server↔user session key derivation |
35+
| Public Key | RSA | 2048-bit | User↔user direct message signing/encryption |
36+
| Symmetric | AES-256-GCM | 256-bit | Authenticated bulk data encryption |
37+
38+
DH parameters: RFC 3526 Group 14 (2048-bit MODP).
39+
40+
---
41+
42+
## Federation & Ranks
43+
44+
Users can connect to up to 5 external NWE Chat™ servers (of Max Rupplin's design) by IP or domain.
45+
46+
| Connects | Rank | Reward |
47+
|----------|------|--------|
48+
| 50+ | CONNECTOR | Federation badge |
49+
| 100+ | FEDERATION VETERAN | Veteran status + priority routing |
50+
| 200+ | CONCEALMENT 3 | ★ Elevated encryption tier |
51+
| 300+ | GOLD HARVARD CERTIFICATE | ★★ Gold Letter of Certificate from Harvard. Kids. |
52+
53+
---
54+
55+
## Protocol (Port 49230)
56+
57+
```
58+
telnet localhost 49230
59+
60+
REGISTER|username|password|email → Create account
61+
LOGIN|username|password → Authenticate
62+
ADMIN|password → Enable admin mode
63+
MSG|user|text → Direct message (encrypted)
64+
BROADCAST|text → Send to all
65+
LIST → Online users with geo
66+
HISTORY → Last 30 messages
67+
ENCRYPT|DH → Initiate DH-2048 key exchange
68+
ENCRYPT|RSA → Initiate RSA-2048
69+
ENCRYPT_ACCEPT|pubkey → Complete handshake
70+
ENCRYPT_OFF → Disable encryption
71+
FILE|user|name|size|b64 → Send file
72+
VOICE|user|durationMs|b64 → Send voice note
73+
FEDERATE|host[:port] → Connect to remote server
74+
FEDERATION_STATUS → View rank and servers
75+
CHANGE_USERNAME|new → Change username
76+
DELETE_ACCOUNT → Delete account
77+
STATUS → Module status
78+
QUIT → Disconnect
79+
80+
Admin commands:
81+
ADMIN_USERS → List all users
82+
ADMIN_BAN|user → Ban user
83+
ADMIN_UNBAN|user → Unban user
84+
ADMIN_LOGS → Event log
85+
ADMIN_GEO|user → User IP/geo
86+
ADMIN_IPS → All connected IPs
87+
```
88+
89+
---
90+
91+
## Database Schema (nwe_chat)
92+
93+
- **users** — username, password_hash, salt, email, IPs, geo, admin/ban/delete flags, federation count
94+
- **messages** — sender, receiver, content, type (DM/BROADCAST/FILE/VOICE/SYSTEM), IP, timestamp
95+
- **event_log** — user events (login, register, ban, etc.) with IPs
96+
- **federation_log** — remote server connections per user
97+
- **ranks** — rank awards (CONCEALMENT_3, GOLD_HARVARD_CERTIFICATE)
98+
- **chat_settings** — configurable settings (key/value with updater and timestamp)
99+
100+
---
101+
102+
## Webapp
103+
104+
Deep blue background with rich purple offsets. CD1 button connector in blue for Strernary™/direct port routing.
105+
106+
Pages:
107+
- **index.jsp** — Live chat interface, CD1 connector, file/mic buttons
108+
- **account.jsp** — Register, login, change username, delete account
109+
- **federation.jsp** — Connect to remote servers, rank progression
110+
- **settings.jsp** — Review and revise all settings
111+
- **admin.jsp** — Admin panel (users, ban, geo, logs)
112+
- **status.jsp** — Backend connectivity, protocol reference
113+
114+
---
115+
116+
## Scripts
117+
118+
| Script | Purpose |
119+
|--------|---------|
120+
| `start-backend.sh` | Start TCP backend on port 49230 |
121+
| `shutdown-backend.sh` | Stop TCP backend |
122+
| `start-frontend.sh` | Deploy webapp to Tomcat |
123+
| `shutdown-frontend.sh` | Undeploy webapp |
124+
| `servlets/deploy-local.sh` | Deploy webapp |
125+
| `servlets/setup-db.sh` | Create database and seed settings |
126+
127+
---
128+
129+
## Contact
130+
131+
- GitHub: https://github.com/mearvk/Java.Web.Server.Telnet.Front.Java.21/discussions
132+
- Email: mearvk@mearvk.us | mearvk@outlook.com

modules/chat/servlets/servlet/src/main/webapp/account.jsp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
<title>Account — NWE Chat™</title>
88
<link rel="stylesheet" href="css/style.css"/>
99
<script src="js/scroll-preserve.js"></script>
10+
<script src="js/nwe-readme-viewer.js"></script>
1011
</head>
1112
<body>
1213
<nav class="nav"><div class="nav-inner">

modules/chat/servlets/servlet/src/main/webapp/admin.jsp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
<title>Admin — NWE Chat™</title>
88
<link rel="stylesheet" href="css/style.css"/>
99
<script src="js/scroll-preserve.js"></script>
10+
<script src="js/nwe-readme-viewer.js"></script>
1011
</head>
1112
<body>
1213
<nav class="nav"><div class="nav-inner">

0 commit comments

Comments
 (0)