Connway's Game of Life

1 N+
Lượt tải xuống
Mức phân loại nội dung
Phù hợp cho 3 tuổi trở lên
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình
Ảnh chụp màn hình

Thông tin về ứng dụng này

Một ứng dụng rung để mô phỏng sự phát triển và kiểm soát của lưới ô dựa trên khái niệm "Trò chơi cuộc sống của Connway" để chứng minh "Máy tự động di động".

Automata di động:
Máy tự động di động (CA) là một mô hình toán học để mô phỏng các hệ thống phức tạp, thường được biểu diễn dưới dạng một lưới các ô có thể ở một trong số các trạng thái hữu hạn. Các ô thay đổi trạng thái dựa trên một bộ quy tắc xác định trạng thái của chúng bị ảnh hưởng như thế nào bởi trạng thái của các ô xung quanh. Điều này tạo ra các mô hình và cấu trúc phát triển theo thời gian, thường dẫn đến hành vi phức tạp và có vẻ thông minh. CA được sử dụng trong nhiều lĩnh vực khác nhau, bao gồm vật lý, sinh học và khoa học máy tính, để nghiên cứu các hiện tượng từ sự hình thành mô hình đến hành vi tự tổ chức và phát sinh.
Trò chơi cuộc sống của Connway:
Conway's Game of Life là một máy tự động di động lần đầu tiên được đề xuất bởi nhà toán học John Horton Conway vào năm 1970. Nó là một mô phỏng các quy tắc đơn giản có thể tạo ra các mẫu phức tạp và thú vị.

Quá trình mô phỏng diễn ra trên một lưới ô hai chiều, trong đó mỗi ô là "sống" hoặc "chết". Ở mỗi bước, trạng thái của từng ô được cập nhật dựa trên trạng thái của tám ô lân cận theo các quy tắc sau:

Nếu một ô còn sống và có hai hoặc ba ô lân cận đang sống, thì ô đó vẫn còn sống. Nếu một ô đã chết và có chính xác ba ô lân cận đang sống, thì ô đó sẽ sống lại. Trong tất cả các trường hợp khác, một tế bào chết hoặc vẫn chết. Những quy tắc đơn giản này có thể tạo ra các mẫu khác nhau, từ các bộ dao động đơn giản đến các hình dạng phức tạp phát triển theo thời gian. Trò chơi Cuộc sống thường được sử dụng làm ví dụ về máy tự động di động và được nghiên cứu rộng rãi bởi các nhà toán học, nhà khoa học máy tính và các nhà nghiên cứu khác quan tâm đến các hệ thống phức tạp và hành vi mới nổi.


Tính năng thử nghiệm- Tạo khóa mã hóa đối xứng/IV:
Với bản chất của máy tự động di động và cách nó tiến triển qua nhiều trạng thái hữu hạn, nó có thể được sử dụng để tạo các chuỗi/số giả ngẫu nhiên có thể phục vụ mục đích của các khóa mã hóa bí mật. Tạo khóa đối xứng đề cập đến quá trình tạo khóa bí mật có thể được sử dụng để mã hóa và giải mã dữ liệu một cách an toàn. Theo cách tiếp cận này, CA được khởi tạo với trạng thái ban đầu ngẫu nhiên, sau đó các quy tắc được áp dụng lặp đi lặp lại để tạo ra một chuỗi các trạng thái. Chuỗi các trạng thái sau đó được chuyển đổi thành một chuỗi số có thể được sử dụng làm khóa bí mật. Ưu điểm của việc sử dụng CA để tạo khóa đối xứng là chuỗi số kết quả rất ngẫu nhiên và không thể đoán trước, khiến kẻ tấn công rất khó đoán được khóa. Ngoài ra, CA có thể được cấu hình dễ dàng để tạo ra các khóa có độ dài khác nhau, giúp nó phù hợp với nhiều ứng dụng mã hóa.

Thông số kỹ thuật:
Dưới đây là chi tiết triển khai cụ thể cho tính năng thử nghiệm này:

Các khóa mã hóa này được tạo bằng cách sử dụng trạng thái hiện tại của Cellular Automaton :

Tại thời điểm tạo khóa, trạng thái/thế hệ hiện tại của máy tự động di động được chuyển đổi thành chuỗi nhị phân--> 1 nếu còn sống/0 nếu đã chết.
Chuỗi nhị phân này sau đó được chia thành các chuỗi con 12 và mỗi chuỗi con được chuyển đổi thành số tương đương thập phân của nó.
Những con số này sau đó được mã hóa thành một ký tự. Do đó, một chuỗi các ký tự biệt ngữ được tạo ra. Chuỗi này sau đó được chia thành hai nửa được sử dụng để tạo khóa bí mật và vectơ khởi tạo.
Sau đó, mỗi nửa trong số hai nửa này sẽ trải qua quá trình mã hóa UTF-8 và băm SHA-256.
16 byte đầu tiên của hai nửa sau đó được chuyển đổi thành khóa và IV tương ứng.
Thuật toán được sử dụng để kiểm tra khóa đối xứng được tạo ra là AES (Tiêu chuẩn mã hóa nâng cao). Tôi đã sử dụng gói mã hóa để triển khai thuật toán AES, vì mục đích của tôi chỉ là để giới thiệu việc tạo khóa chứ không phải triển khai lại bất kỳ thuật toán mã hóa nào.
Lần cập nhật gần đây nhất
14 thg 5, 2023

An toàn dữ liệu

Sự an toàn bắt đầu từ việc nắm được cách nhà phát triển thu thập và chia sẻ dữ liệu của bạn. Các biện pháp bảo vệ quyền riêng tư và bảo mật dữ liệu có thể thay đổi tuỳ theo cách sử dụng, khu vực và độ tuổi. Nhà phát triển đã cung cấp thông tin này và có thể sẽ cập nhật theo thời gian.
Không chia sẻ dữ liệu với bên thứ ba
Tìm hiểu thêm về cách nhà phát triển khai báo thông tin về hoạt động chia sẻ dữ liệu
Không thu thập dữ liệu nào
Tìm hiểu thêm về cách nhà phát triển khai báo thông tin về hoạt động thu thập dữ liệu

Tính năng mới

- Added a new "Encryption Key" generation feature which uses the state of the board in a given generation to generate symmetric encryption
keys. Access this experimental feature via the main menu.
- These encryption keys are generated using the current state of the Cellular Automaton . Check this project's Github Repository:
https://github.com/nikhil-RGB/flutter_automata for more info

Thông tin hỗ trợ của ứng dụng

Số điện thoại
+918454817339
Giới thiệu về nhà phát triển
NIKHIL NARAYANAN
javakingxi@gmail.com
India
undefined