Chính sách bảo mật
Ngày hiệu lực: 7 tháng 5 năm 2026
Cập nhật lần cuối: 7 tháng 5 năm 2026
Chào mừng bạn đến với Breeze Pixel Studio (sau đây gọi là "Ứng dụng"). Chúng tôi hiểu rõ tầm quan trọng của thông tin cá nhân đối với bạn và sẽ bảo vệ thông tin cá nhân cũng như quyền riêng tư của bạn theo quy định của pháp luật. Vui lòng đọc kỹ và hiểu đầy đủ Chính sách bảo mật này trước khi sử dụng Ứng dụng.
Chính sách bảo mật này áp dụng cho ứng dụng khách Breeze Pixel Studio (bao gồm các phiên bản nền tảng iOS, Android, Web, Windows, macOS, Linux, v.v.) và các dịch vụ liên quan.
1. Cách chúng tôi thu thập và sử dụng thông tin cá nhân của bạn
1.1 Đăng ký và tài khoản
Khi bạn đăng ký tài khoản, chúng tôi cần thu thập các thông tin sau:
| Loại thông tin | Bắt buộc hay không | Mục đích |
|---|---|---|
| Tên người dùng (username) | Bắt buộc | Định danh duy nhất của tài khoản, dùng để đăng nhập |
| Mật khẩu (password) | Bắt buộc | Xác thực bảo mật tài khoản, được mã hóa bằng PBKDF2 |
| Biệt danh (nickname) | Bắt buộc | Tên hiển thị trong cộng đồng |
| Email (email) | Tùy chọn | Xác thực bảo mật tài khoản, đặt lại mật khẩu, xác nhận hủy tài khoản |
1.2 Thông tin cá nhân
Trong quá trình sử dụng Ứng dụng, bạn có thể tự nguyện bổ sung các thông tin cá nhân sau:
- Ảnh đại diện: Dùng cho trang cá nhân và hiển thị trong cộng đồng
- Ảnh bìa: Dùng để trang trí trang cá nhân
- Giới tính: Dùng để hiển thị trên trang cá nhân (có thể chọn: Không xác định / Nam / Nữ)
- Chữ ký cá nhân: Dùng để hiển thị trên trang cá nhân
- Danh hiệu: Danh hiệu ảo đạt được qua cấp độ, thành tích, sự kiện, hội viên, v.v.
Tất cả thông tin trên đều do bạn tự nguyện cung cấp, bạn có thể sửa đổi hoặc xóa bất cứ lúc nào.
1.3 Thông tin thiết bị
Để đảm bảo dịch vụ hoạt động ổn định và tối ưu hóa trải nghiệm người dùng, chúng tôi sẽ thu thập các thông tin thiết bị sau:
- Định danh thiết bị: UUID v4 được tạo khi ứng dụng khởi chạy lần đầu, lưu trữ cục bộ, dùng để theo dõi phiên và liên kết thiết bị
- Phiên bản hệ điều hành: Ví dụ: Android 14, iOS 17, v.v.
- Model thiết bị: Ví dụ: Samsung Galaxy S24, iPhone 15 Pro, v.v.
- Phiên bản ứng dụng: Phiên bản ứng dụng hiện đang cài đặt
- Loại nền tảng: Android / iOS / Web / Windows / macOS / Linux
Thông tin trên chỉ được gửi khi ứng dụng khởi chạy hoặc chuyển về foreground, dùng để:
- Thống kê tình trạng sử dụng ứng dụng (bắt đầu/kết thúc phiên, thời lượng phiên)
- Duy trì heartbeat phiên (mỗi 30 giây một lần)
- Liên kết thiết bị với tài khoản người dùng sau khi đăng nhập
1.4 Lịch sử sử dụng
Chúng tôi sẽ ghi lại các dữ liệu hành vi sử dụng sau:
- Bản ghi phiên: Thời gian khởi chạy ứng dụng, thời gian sử dụng, ID phiên
- Lịch sử đăng nhập: Thời gian đăng nhập cuối cùng
- Dữ liệu tương tác: Số lượng theo dõi/người theo dõi, số tác phẩm, số lượt thích, số lượt lưu
- Lịch sử thông báo: Trạng thái đã đọc/chưa đọc của thông báo hệ thống, thông báo tương tác
1.5 Nội dung do người dùng sáng tạo
Khi bạn sáng tạo và chia sẻ trong Ứng dụng, chúng tôi sẽ xử lý các nội dung sau:
- Tác phẩm pixel art: Dữ liệu canvas, tệp dự án, hình ảnh xuất
- Bộ sưu tập: Thông tin bộ sưu tập tác phẩm
- Chuyên đề: Thông tin tạo và tham gia chuyên đề
Nội dung trên được tải lên máy chủ khi bạn chủ động đăng tải, các tác phẩm chưa đăng tải chỉ được lưu trữ trên thiết bị cục bộ của bạn.
1.6 Hình ảnh và tệp tin
Trong các trường hợp sau, chúng tôi sẽ truy cập hình ảnh và tệp tin của bạn:
- Chọn ảnh từ thư viện: Dùng làm ảnh tham khảo cho sáng tác, tải ảnh đại diện, tải ảnh bìa
- Chụp ảnh: Dùng làm ảnh tham khảo cho sáng tác (cần cấp quyền camera)
- Lưu ảnh vào thư viện: Xuất/lưu tác phẩm pixel art đã sáng tạo
- Chọn tệp tin: Trên máy tính để bàn (Windows/macOS/Linux) chọn tệp ảnh cục bộ
2. Cách chúng tôi sử dụng quyền hạn
2.1 Quyền hạn trên Android
| Quyền | Cấp API tương ứng | Mục đích | Có thể từ chối không |
|---|---|---|---|
READ_MEDIA_IMAGES | Android 13+ | Đọc ảnh từ thư viện làm ảnh tham khảo hoặc tải ảnh đại diện/ảnh bìa | Có, nếu từ chối sẽ không thể chọn ảnh |
READ_EXTERNAL_STORAGE | Android 12 trở xuống | Đọc ảnh từ bộ nhớ ngoài | Có, nếu từ chối sẽ không thể chọn ảnh |
| Quyền camera (thời gian chạy) | Tất cả | Chụp ảnh làm ảnh tham khảo | Có, nếu từ chối sẽ không thể chụp ảnh |
2.2 Quyền hạn trên iOS
| Quyền | Mục đích | Có thể từ chối không |
|---|---|---|
NSPhotoLibraryUsageDescription | Truy cập thư viện ảnh để chọn ảnh tham khảo, ảnh tham khảo sẽ giúp bạn làm hình ảnh trực quan khi vẽ pixel art | Có, nếu từ chối sẽ không thể chọn ảnh |
NSPhotoLibraryAddUsageDescription | Lưu ảnh vào thư viện | Có, nếu từ chối sẽ không thể lưu vào thư viện |
| Quyền camera (thời gian chạy) | Chụp ảnh làm ảnh tham khảo | Có, nếu từ chối sẽ không thể chụp ảnh |
2.3 Giải thích về quyền hạn
- Tất cả các quyền hạn đều cần bạn chủ động cấp phép, chúng tôi sẽ không truy cập các chức năng liên quan khi chưa được cấp phép
- Bạn có thể tắt các quyền đã cấp bất cứ lúc nào trong cài đặt hệ thống
- Việc từ chối quyền sẽ không ảnh hưởng đến việc sử dụng các chức năng khác của Ứng dụng, chỉ ảnh hưởng đến các chức năng cụ thể phụ thuộc vào quyền đó
- Trước khi yêu cầu các quyền nhạy cảm (như camera), chúng tôi sẽ hiển thị hộp thoại giải thích mục đích sử dụng quyền
3. Cách chúng tôi lưu trữ và bảo vệ thông tin cá nhân của bạn
3.1 Phương thức lưu trữ thông tin
Lưu trữ cục bộ
- SharedPreferences: Dùng để lưu trữ mã thông báo xác thực danh tính (Access Token, Refresh Token) và định danh thiết bị
- Cơ sở dữ liệu SQLite: Dùng để lưu trữ dữ liệu sáng tạo như tài liệu pixel art cục bộ, khung hình hoạt ảnh, vật liệu, v.v.
Dữ liệu lưu trữ cục bộ sẽ không rời khỏi thiết bị của bạn (trừ khi bạn chủ động tải lên đồng bộ).
Lưu trữ máy chủ
- Cơ sở dữ liệu Cloudflare D1: Lưu trữ thông tin tài khoản người dùng, thông tin cá nhân, quan hệ xã hội, siêu dữ liệu tác phẩm, v.v.
- Lưu trữ đối tượng Cloudflare R2: Lưu trữ các tệp hình ảnh do người dùng tải lên (ảnh đại diện, ảnh bìa, hình ảnh tác phẩm, v.v.)
- Cloudflare KV: Lưu trữ Refresh Token để xác minh thu hồi mã thông báo phía máy chủ
Máy chủ nằm trên mạng biên toàn cầu của Cloudflare, toàn bộ quá trình truyền dữ liệu được mã hóa bởi TLS.
3.2 Các biện pháp bảo mật
Chúng tôi thực hiện các biện pháp sau để bảo vệ an toàn thông tin cá nhân của bạn:
- Bảo vệ mật khẩu: Sử dụng thuật toán PBKDF2 (100.000 lần lặp) với muối để băm và lưu trữ, máy chủ không lưu mật khẩu dạng văn bản thuần
- Bảo mật mã thông báo:
- Access Token có hiệu lực 7 ngày, được ký bằng HS256
- Refresh Token có hiệu lực 30 ngày, sử dụng cơ chế luân chuyển mã thông báo (mã thông báo cũ tự động hết hiệu lực sau khi sử dụng)
- Khi đăng xuất, máy chủ xóa bản ghi Refresh Token trong KV, thực hiện thu hồi mã thông báo phía máy chủ
- Khi mã thông báo hết hạn, tự động cố gắng làm mới không cảm nhận, các yêu cầu trong quá trình làm mới sẽ xếp hàng chờ
- Mã hóa truyền tải: Tất cả giao tiếp mạng đều sử dụng HTTPS (TLS) để mã hóa truyền tải
- Tối thiểu hóa quyền hạn: Yêu cầu API mang mã thông báo xác thực theo nhu cầu, các giao diện công khai không yêu cầu xác thực
- Hủy tài khoản: Hỗ trợ tính năng hủy tài khoản, sau khi hủy sẽ vào giai đoạn hạ nhiệt, trong giai đoạn này có thể hủy việc hủy tài khoản
3.3 Thời gian lưu trữ dữ liệu
- Thông tin tài khoản: Được lưu trữ liên tục trong thời gian bạn sử dụng Ứng dụng, sau khi hủy tài khoản sẽ bị xóa hoặc ẩn danh
- Mã thông báo xác thực: Access Token hết hạn sau 7 ngày, Refresh Token hết hạn sau 30 ngày hoặc bị xóa khi đăng xuất
- Định danh thiết bị: Lưu trữ cục bộ, tự động xóa khi gỡ cài đặt ứng dụng
- Dữ liệu phiên: Dùng để phân tích thống kê, thời gian lưu trữ không quá 180 ngày
- Nội dung sáng tạo: Được lưu trữ liên tục cho đến khi bạn xóa hoặc hủy tài khoản
4. Cách chúng tôi chia sẻ, chuyển giao và tiết lộ công khai thông tin cá nhân của bạn
4.1 Chia sẻ
Chúng tôi sẽ không bán thông tin cá nhân của bạn cho bất kỳ bên thứ ba nào. Trong các trường hợp sau, chúng tôi có thể chia sẻ thông tin của bạn:
- Nhà cung cấp dịch vụ: Chúng tôi sử dụng Cloudflare để cung cấp dịch vụ lưu trữ máy chủ, cơ sở dữ liệu, lưu trữ đối tượng và CDN, Cloudflare chỉ xử lý dữ liệu của bạn khi cần thiết để cung cấp các dịch vụ nêu trên
- Yêu cầu pháp lý: Theo quy định pháp luật, tố tụng, yêu cầu bắt buộc của cơ quan chính phủ, chúng tôi có thể cần chia sẻ thông tin của bạn
4.2 Tiết lộ công khai
Các thông tin sau có thể hiển thị với người dùng khác:
- Thông tin công khai: Biệt danh, ảnh đại diện, giới tính, chữ ký cá nhân, danh hiệu hiện tại, cấp độ, số người theo dõi/đang theo dõi/tác phẩm/lượt thích/lượt lưu
- Tác phẩm công khai: Các tác phẩm bạn đăng ở chế độ công khai
- Bộ sưu tập công khai: Các bộ sưu tập bạn tạo
- Quan hệ xã hội: Danh sách theo dõi, danh sách người theo dõi
Bạn có thể kiểm soát việc tác phẩm có hiển thị với người dùng khác hay không thông qua cài đặt chế độ hiển thị (công khai/riêng tư).
4.3 Các trường hợp không chia sẻ
Chúng tôi sẽ không chia sẻ các thông tin sau với bên thứ ba:
- Mật khẩu của bạn (được mã hóa lưu trữ, không ai có thể xem văn bản thuần)
- Mã thông báo xác thực của bạn
- Địa chỉ email của bạn (sẽ không hiển thị cho người dùng khác)
- Định danh thiết bị của bạn
- Các tác phẩm chưa đăng tải của bạn
5. Quyền của bạn
5.1 Truy cập và chỉnh sửa
Bạn có quyền truy cập và chỉnh sửa thông tin cá nhân của mình, có thể thực hiện qua các cách sau:
- Thông tin cá nhân: Xem và sửa đổi biệt danh, ảnh đại diện, ảnh bìa, giới tính, chữ ký cá nhân tại trang "Chỉnh sửa thông tin"
- Email: Thay đổi email liên kết trong cài đặt tài khoản (cần xác nhận mã xác thực)
- Quản lý tác phẩm: Xem, chỉnh sửa, xóa các tác phẩm bạn đã đăng
5.2 Xóa
- Xóa tác phẩm: Bạn có thể xóa các tác phẩm, bộ sưu tập đã đăng
- Hủy tài khoản: Bạn có thể yêu cầu hủy tài khoản trong cài đặt tài khoản
- Sau khi gửi yêu cầu hủy, sẽ vào giai đoạn hạ nhiệt (số ngày cụ thể dựa trên thông báo trong ứng dụng)
- Trong giai đoạn hạ nhiệt, bạn có thể đăng nhập và hủy việc hủy tài khoản
- Sau khi giai đoạn hạ nhiệt kết thúc, tài khoản và dữ liệu liên quan sẽ bị xóa vĩnh viễn
5.3 Thu hồi quyền
Bạn có thể tắt các quyền đã cấp bất cứ lúc nào trong cài đặt hệ thống thiết bị:
- Android: Cài đặt → Ứng dụng → Breeze Pixel Studio → Quyền hạn
- iOS: Cài đặt → Quyền riêng tư & Bảo mật → Quyền tương ứng
5.4 Xuất dữ liệu
Bạn có thể xuất các tệp tác phẩm pixel art được lưu trữ cục bộ (định dạng .pxa hoặc định dạng hình ảnh), nhưng hiện tại không hỗ trợ xuất hàng loạt dữ liệu từ máy chủ.
6. Bảo vệ trẻ vị thành niên
Chúng tôi rất coi trọng việc bảo vệ thông tin cá nhân của trẻ vị thành niên. Nếu bạn là trẻ vị thành niên dưới 14 tuổi, vui lòng sử dụng Ứng dụng dưới sự hướng dẫn và giám sát của người giám hộ, và nhận được sự đồng ý của người giám hộ trước khi đăng ký và cung cấp thông tin cá nhân.
Nếu chúng tôi phát hiện đã thu thập thông tin cá nhân của trẻ vị thành niên mà không có sự đồng ý của người giám hộ, chúng tôi sẽ xóa thông tin liên quan trong thời gian sớm nhất.
7. Cập nhật Chính sách bảo mật
Chúng tôi có thể sửa đổi Chính sách bảo mật này theo thời gian. Chính sách bảo mật cập nhật sẽ được thông báo trong ứng dụng hoặc bằng các phương thức thích hợp khác. Đối với các thay đổi quan trọng, chúng tôi sẽ cung cấp thông báo nổi bật hơn.
Nếu bạn tiếp tục sử dụng Ứng dụng sau khi Chính sách bảo mật được cập nhật, điều đó có nghĩa là bạn đồng ý tuân theo Chính sách bảo mật đã được sửa đổi.
8. Liên hệ với chúng tôi
Nếu bạn có bất kỳ câu hỏi, ý kiến hoặc đề xuất nào về Chính sách bảo mật này, vui lòng liên hệ với chúng tôi qua các cách sau:
- Phản hồi trong ứng dụng: Gửi qua tính năng phản hồi ý kiến trong ứng dụng
- Email: Vui lòng liên hệ với chúng tôi qua địa chỉ email được công bố trong ứng dụng
Chúng tôi sẽ trả lời yêu cầu của bạn trong vòng 15 ngày làm việc.
Phụ lục: Danh sách SDK bên thứ ba
Các SDK bên thứ ba được tích hợp trong Ứng dụng và thông tin có thể thu thập như sau:
| Tên SDK | Mục đích | Thông tin có thể thu thập | Chính sách bảo mật |
|---|---|---|---|
| Flutter Framework | Khung phát triển ứng dụng | Thông tin thiết bị, thông tin ứng dụng | https://flutter.dev/privacy |
| image_picker | Chọn ảnh | Truy cập thư viện ảnh (cần cấp quyền) | https://pub.dev/packages/image_picker |
| file_picker | Chọn tệp (máy tính để bàn) | Truy cập tệp (cần thao tác của người dùng) | https://pub.dev/packages/file_picker |
| share_plus | Chia sẻ hệ thống | Không thu thập thông tin cá nhân | https://pub.dev/packages/share_plus |
| permission_handler | Quản lý quyền | Không thu thập thông tin cá nhân | https://pub.dev/packages/permission_handler |
| url_launcher | Mở liên kết bên ngoài | Không thu thập thông tin cá nhân | https://pub.dev/packages/url_launcher |
| shared_preferences | Lưu trữ cặp khóa-giá trị cục bộ | Không thu thập thông tin cá nhân | https://pub.dev/packages/shared_preferences |
| sqflite | Cơ sở dữ liệu cục bộ | Không thu thập thông tin cá nhân | https://pub.dev/packages/sqflite |
| device_info_plus | Lấy thông tin thiết bị | Model thiết bị, phiên bản hệ điều hành | https://pub.dev/packages/device_info_plus |
| package_info_plus | Lấy thông tin ứng dụng | Phiên bản ứng dụng | https://pub.dev/packages/package_info_plus |
| http | Yêu cầu mạng | Không thu thập thêm thông tin | https://pub.dev/packages/http |
| Cloudflare Workers | Dịch vụ API backend | Nhật ký yêu cầu (tự động) | https://www.cloudflare.com/privacypolicy/ |
| Cloudflare R2 | Lưu trữ đối tượng tệp | Không thu thập thêm thông tin | https://www.cloudflare.com/privacypolicy/ |
