Experimenting with Data Conversion for Secure Storage #52
Closed
alwialhuda11
started this conversation in
Show and tell
Replies: 1 comment 1 reply
-
Thanks for sharing! Do you have a github repo to the code? Would love to fork and try it out |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Show and tell project type
Novel Nada Program Example
Github Repo Link
data-conversion-experiment
Video Walkthough Link
No response
Project Description
I built a simple Python script to experiment with converting sensitive data like wallet addresses into a more secure format for storage or transmission in our applications. The use case is to enhance security and optimize storage requirements when handling sensitive user data.
What problems does your project solve? How does it preserve privacy for users?
This project aims to solve the problem of securely storing and transmitting sensitive user data, such as wallet addresses, in our applications. By converting wallet addresses into a format like a list of integers representing ASCII values, we can potentially obfuscate the original data and make it more difficult for unauthorized parties to access or interpret the sensitive information. This approach could help preserve user privacy by adding an extra layer of security to the storage and transmission of sensitive data.
How does the project use Nillion? Describe and link to any Nada programs
While this project doesn't directly use Nillion or any Nada programs, the concept of converting sensitive data into a more secure format could be applicable in the context of Nillion's privacy-preserving technologies. The Python script demonstrates a simple approach to data conversion, which could potentially be integrated with Nillion's solutions for secure computation and data privacy.
`"""
I'm experimenting with converting data like wallet addresses into a format
that can be used in the systems or applications we're building. For example,
we might want to store user wallet addresses as integers for security or
storage efficiency reasons.
"""
import yaml
def string_to_ints(input_str):
"""
Converts a string to a list of integers representing the ASCII values
of each character in the string.
def ints_to_string(int_list):
"""
Converts a list of integers back to a string.
Inverse of the string_to_ints function.
def yaml_template(int_list):
"""
Generates a YAML configuration section for the given list of integers.
This YAML section can be used in the circuit we're building.
Example usage
wallet_address = "0x1234567890abcdef"
print(f"Wallet address: {wallet_address}")
Convert wallet address to a list of integers
wallet_ints = string_to_ints(wallet_address)
print(f"Wallet address as integers: {wallet_ints}")
Convert the list of integers back to a string
recovered_address = ints_to_string(wallet_ints)
print(f"Reconstructed wallet address: {recovered_address}")
Generate the YAML configuration section
yaml_config = yaml_template(wallet_ints)
print(f"YAML configuration section:\n{yaml_config}")
Verify that the original and reconstructed addresses match
assert wallet_address == recovered_address, "Wallet address conversion failed!"
print("Wallet address conversion successful!")`
Is there anything else you want to share?
This project is a basic exploration of the concept of data conversion for security purposes. It's a starting point for further research and development into more robust and secure methods for handling sensitive user data in applications.
Feature requests, bugs encountered, any help or support you need from Nillion to keep building?
At this stage, I don't have any specific feature requests or bugs to report. However, as I continue exploring this concept, I may require guidance or support from the Nillion team regarding best practices for secure data handling, integration with Nillion's privacy-preserving technologies, and potential use cases or applications within the Nillion ecosystem.
Optional - Link your project and team members' social handles
No response
Optional - Team ETH Address(es)
0x7ab6bc01ec94d54E13A62cFfE7353f74d28f9A78
Beta Was this translation helpful? Give feedback.
All reactions