feat: enhance password-protected rooms with key commitments and management

- Add key commitment scheme for immediate password verification
- Implement ownership transfer with /transfer command
- Add password change functionality with /pass command
- Include room metadata in initialization messages
- Remove /help command and rename /changepass to /pass
- Make room names tappable to show sidebar
- Remove spaces in person/room counter display
- Update UI to show lock icons and orange colors for protected rooms
- Fix password verification to work with empty rooms
- Add comprehensive tests for new functionality

This update significantly improves the security and usability of
password-protected rooms by allowing immediate verification without
waiting for encrypted messages.
This commit is contained in:
jack
2025-07-05 19:35:37 +02:00
parent cfded8c4df
commit 7151896102
13 changed files with 1824 additions and 114 deletions
+30
View File
@@ -47,3 +47,33 @@ targets:
CODE_SIGNING_ALLOWED: YES
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS: YES
bitchatTests_iOS:
type: bundle.unit-test
platform: iOS
sources:
- bitchatTests
dependencies:
- target: bitchat_iOS
settings:
PRODUCT_BUNDLE_IDENTIFIER: chat.bitchat.tests
INFOPLIST_FILE: bitchatTests/Info.plist
SWIFT_VERSION: 5.0
IPHONEOS_DEPLOYMENT_TARGET: 16.0
TEST_HOST: $(BUILT_PRODUCTS_DIR)/bitchat.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/bitchat
BUNDLE_LOADER: $(TEST_HOST)
bitchatTests_macOS:
type: bundle.unit-test
platform: macOS
sources:
- bitchatTests
dependencies:
- target: bitchat_macOS
settings:
PRODUCT_BUNDLE_IDENTIFIER: chat.bitchat.tests
INFOPLIST_FILE: bitchatTests/Info.plist
SWIFT_VERSION: 5.0
MACOSX_DEPLOYMENT_TARGET: 13.0
TEST_HOST: $(BUILT_PRODUCTS_DIR)/bitchat.app/Contents/MacOS/bitchat
BUNDLE_LOADER: $(TEST_HOST)