Redmine là hệ thống quản lý dự án trên web mã nguồn mở. Được viết bằng Ruby trên nền tảng Ruby on Rails (http://www.redmine.org/)
Ý tưởng: Viết một plugin - hoặc hiệu chỉnh redmine để có khả năng giấu thông tin (mã hóa), chỉ có người dùng có khóa mới có thể xem được thông tin đó.
Hiện trạng :
Hiện tại, trên mạng có một số service cho phép người dùng dùng dịch vụ redmine công cộng. Một người dùng sẽ sở hữu project của mình - public hoặc private. Nhưng dù có ở dạng nào đi nữa thì chỉ là phân chia quyền với user khác, nếu user có đủ quyền thì vẫn có thể xem được thông tin nếu họ muốn. Hoặc trường hợp bị tấn công và mất CSDL thì tính bí mật của thông tin của toàn bộ hệ thống redmine đó sẽ bị phá vỡ.
Giải pháp:
Hiện thực plugin/hiệu chỉnh redmine để có khả năng mã hóa thông tin. Lúc này thông tin lưu ở server sẽ được mã hóa, có thể mã hóa project hoặc từng issues một, tùy thuộc vào người dùng muốn. Thông tin chỉ được mã hóa ở browser trước khi gửi lên server và giải mã trước khi hiển thị trên trình duyệt.
Hướng thực hiện:
Nghiên cứu tổ chức thông tin trong CSDL của redmine, coi phần nào là cần mã hóa, phần nào không. Các thông tin nào cần mã hóa nghiên cứu kĩ, cần thiết nhất là tiêu đề, nội dung … Các thông tin cần có để Redmine vận hành được cần thì phải để lại. Việc nghiên cứu này là một phần của dự án.
Nghiên cứu cách thức mã hóa và giải mã ở client side sao cho người dùng cảm thấy tiện lợi nhất.
Viết mã chương trình.