Môi trường thông tin dựa trên nguyên tắc Dữ liệu Mở

Môi trường thông tin dựa trên nguyên tắc Dữ liệu Mở

Môi trường thông tin được đề xuất là một loại mạng xã hội phi tập trung. Nhưng không giống như nhiều giải pháp hiện có, môi trường này có một số thuộc tính hữu ích ngoài khả năng phân cấp và được tạo trên cơ sở các giải pháp kỹ thuật tiêu chuẩn và khá đơn giản (email, json, tệp văn bản và một chút blockchain). Điều này cho phép bất kỳ ai có kiến ​​thức lập trình cơ bản đều có thể tạo ra các dịch vụ của riêng họ cho môi trường này.

ID phổ quát

Trong bất kỳ môi trường trực tuyến nào, số nhận dạng người dùng và đối tượng là một trong những yếu tố chính của hệ thống.

Trong trường hợp này, mã định danh người dùng là email, mã này thực sự đã trở thành mã định danh được chấp nhận rộng rãi để ủy quyền trên các trang web và các dịch vụ khác (jaber, openId).

Trên thực tế, mã định danh người dùng trong một môi trường trực tuyến nhất định là cặp thông tin đăng nhập + tên miền, để thuận tiện, cặp này được viết ở dạng quen thuộc với hầu hết mọi người. Đồng thời, để phân cấp tốt hơn, mỗi người dùng nên có tên miền riêng. Điều này gần với các nguyên tắc của indieweb, trong đó miền được sử dụng làm thông tin nhận dạng người dùng. Trong trường hợp của chúng tôi, người dùng thêm biệt hiệu vào tên miền của mình, điều này cho phép anh ta tạo một số tài khoản trên một tên miền (ví dụ: cho bạn bè) và làm cho hệ thống đánh địa chỉ linh hoạt hơn.

Định dạng ID người dùng này không bị ràng buộc với bất kỳ mạng nào. Nếu người dùng đặt dữ liệu của mình trên mạng TOR thì anh ta có thể sử dụng các miền trong vùng .onion; nếu đây là mạng có hệ thống DNS trên blockchain thì các miền trong vùng .bit. Kết quả là, định dạng để đánh địa chỉ người dùng và dữ liệu của họ không phụ thuộc vào mạng mà chúng được truyền qua (kết hợp thông tin đăng nhập + tên miền được sử dụng ở mọi nơi). Đối với những người muốn sử dụng địa chỉ bitcoin/ethereum làm mã định danh, bạn có thể sửa đổi hệ thống để sử dụng địa chỉ email giả có dạng [email protected]

Đánh địa chỉ các đối tượng

Môi trường trực tuyến này thực chất là một tập hợp các đối tượng được mô tả dưới dạng có cấu trúc, máy có thể đọc được, tham chiếu đến các đối tượng khác và được gắn với một người dùng (email) hoặc dự án/tổ chức (miền) cụ thể.

các bình trong không gian tên urn:opendata được sử dụng làm mã định danh đối tượng. Ví dụ: hồ sơ người dùng có địa chỉ như:

urn:opendata:profile:[email protected]

Nhận xét của người dùng có một địa chỉ như:

urn:opendata:comment:[email protected]:08adbed93413782682fd25da77bd93c99dfd0548

trong đó 08adbed93413782682fd25da77bd93c99dfd0548 là hàm băm sha-1 ngẫu nhiên đóng vai trò là id đối tượng và [email được bảo vệ] - chủ sở hữu của đối tượng này.

Nguyên tắc công bố dữ liệu người dùng

Có tên miền riêng của bạn được kiểm soát, người dùng có thể dễ dàng xuất bản dữ liệu và nội dung của mình. Và không giống như indiebeb, điều này không yêu cầu tạo một trang web với các trang html có dữ liệu ngữ nghĩa tích hợp.

Ví dụ: thông tin cơ bản về người dùng nằm trong tệp datarobots.txt, tệp này nằm ở địa chỉ như

http://55334.ru/[email protected]/datarobots.txt

Và nó có nội dung như thế này:

Object: user
Services-Enabled: 55334.ru,newethnos.ru
Ethnos: newethnos
Delegate-Tokens: http://55334.ru/[email protected]/delegete.txt

Trên thực tế, đó là một tập hợp các chuỗi có dữ liệu có dạng key->value, phân tích cú pháp là một nhiệm vụ đơn giản đối với bất kỳ ai có kiến ​​thức lập trình cơ bản. Và bạn có thể chỉnh sửa dữ liệu nếu muốn bằng notepad thông thường.

Dữ liệu phức tạp hơn (hồ sơ, nhận xét, bài đăng, v.v.), có bình lưu trữ riêng, được gửi dưới dạng đối tượng JSON bằng API tiêu chuẩn (http://opendatahub.org/api_1.0?lang=ru), có thể được đặt trên miền của người dùng và trên trang web của bên thứ ba mà người dùng đã ủy quyền lưu trữ, xuất bản và chỉnh sửa dữ liệu của mình (trong dòng Đã bật dịch vụ của tệp datarobots.txt). Các dịch vụ của bên thứ ba như vậy được mô tả dưới đây.

Bản thể luận đơn giản và JSON

Bản thể luận của môi trường truyền thông tương đối đơn giản so với bản thể học của cơ sở tri thức ngành. Vì trong môi trường giao tiếp có một tập hợp tương đối nhỏ các đối tượng tiêu chuẩn (đăng bài, bình luận, thích, hồ sơ, đánh giá) với một tập hợp thuộc tính tương đối nhỏ.

Do đó, để mô tả các đối tượng trong một môi trường như vậy, chỉ cần sử dụng JSON thay vì XML là đủ, phức tạp hơn về cấu trúc và phân tích cú pháp (điều quan trọng là đừng quên yêu cầu về ngưỡng đầu vào và khả năng mở rộng thấp).

Để có được một đối tượng có chiếc bình đã biết, chúng tôi cần liên hệ với miền của người dùng hoặc các dịch vụ của bên thứ ba mà người dùng đã ủy quyền quản lý dữ liệu của mình.

Trong môi trường trực tuyến này, mỗi miền mà dịch vụ trực tuyến tồn tại cũng có datarobots.txt riêng được đặt tại một địa chỉ như example.com/datarobots.txt có nội dung tương tự:

Object: service
Api: http://newethnos.ru/api
Api-Version: http://opendatahub.org/api_1.0

Từ đó chúng ta có thể biết rằng chúng ta có thể lấy dữ liệu về một đối tượng tại một địa chỉ như:

http://newethnos.ru/api?urn=urn:opendata:profile:[email được bảo vệ]

Đối tượng JSON có cấu trúc sau:

{
    "urn": "urn:opendata:profile:[email protected]",
    "status": 1,
    "message": "Ok",
    "timestamp": 1596429631,
    "service": "example.com",
    "data": {
        "name": "John",
        "surname": "Gald",
        "gender": "male",
        "city": "Moscow",
        "img": "http://domain.com/image.jpg",
        "birthtime": 332467200,
        "community_friends": {
            "[email protected]": "1",
            "[email protected]": "0.5",
            "[email protected]": "0.7"
        },
        "interests_tags": "cars,cats,cinema",
        "mental_cards": {
            "no_alcohol@main": 8,
            "data_accumulation@main": 8,
            "open_data@main": 8
        }
    }
}

Kiến trúc dịch vụ

Các dịch vụ của bên thứ ba là cần thiết để đơn giản hóa quá trình xuất bản và tìm kiếm dữ liệu cho người dùng cuối.

Được đề cập ở trên là một trong những loại dịch vụ giúp người dùng xuất bản dữ liệu của mình lên mạng. Có thể có nhiều dịch vụ tương tự, mỗi dịch vụ cung cấp cho người dùng giao diện thuận tiện để chỉnh sửa một trong các loại dữ liệu (diễn đàn, blog, câu hỏi-trả lời, v.v.). Nếu người dùng không tin tưởng vào các dịch vụ của bên thứ ba thì họ có thể cài đặt tập lệnh dịch vụ dữ liệu trên miền của mình hoặc tự phát triển tập lệnh đó.

Ngoài các dịch vụ cho phép người dùng xuất bản/chỉnh sửa dữ liệu, môi trường trực tuyến còn cung cấp một số dịch vụ khác thực hiện các tác vụ tương đối phức tạp, khá khó thực hiện trên các nút của người dùng cuối.

Một loại dịch vụ như vậy là trung tâm dữ liệu ( opendatahub.org/en - ví dụ), hoạt động như một loại kho lưu trữ web thu thập tất cả dữ liệu công khai của người dùng mà máy có thể đọc được và cung cấp quyền truy cập vào dữ liệu đó thông qua API.

Sự hiện diện của các dịch vụ trong một môi trường trực tuyến mở, phi tập trung như vậy làm giảm đáng kể rào cản gia nhập đối với người dùng vì không cần phải cài đặt và định cấu hình nút riêng của họ. Đồng thời, người dùng vẫn có quyền kiểm soát dữ liệu của mình (bất cứ lúc nào anh ta có thể thay đổi dịch vụ được ủy quyền xuất bản dữ liệu hoặc tạo nút của riêng mình).

Nếu người dùng hoàn toàn không quan tâm đến việc sở hữu dữ liệu của mình và không có tên miền riêng hoặc ai đó quen thuộc với tên miền đó thì theo mặc định, dữ liệu của người đó sẽ được quản lý bởi opendatahub.org.

Tất cả những điều này là do ai phải trả?

Có lẽ vấn đề chính của hầu hết các dự án phi tập trung như vậy là không có khả năng kiếm tiền từ chúng ở mức đủ để phát triển và hỗ trợ ổn định.

Quyên góp + mã thông báo được sử dụng để trang trải chi phí phát triển và tiếp thị trong môi trường trực tuyến này.

Tất cả các khoản đóng góp mà người dùng thực hiện cho các dự án/dịch vụ nội bộ đều được cung cấp công khai, có thể đọc được bằng máy và được liên kết với email. Điều này cho phép chúng được tính đến, chẳng hạn như khi tính toán xếp hạng xã hội trực tuyến và xuất bản trên trang người dùng. Khi các khoản đóng góp không còn ẩn danh, thì trên thực tế, người dùng không quyên góp mà “đóng góp” để hỗ trợ môi trường thông tin chung. Cũng giống như việc mọi người sửa chữa những khu vực chung với thái độ thích hợp đối với những người từ chối sửa chữa.

Ngoài việc quyên góp, để gây quỹ, các mã thông báo được phát hành với số lượng hạn chế (400.000) được sử dụng để trao cho tất cả những người quyên góp cho quỹ chính (dân tộc học).

Các tính năng mã thông báo bổ sung

Mỗi mã thông báo là một “chìa khóa” để truy cập vào môi trường trực tuyến này. Nghĩa là, bạn chỉ có thể sử dụng dịch vụ và tham gia môi trường trực tuyến nếu bạn có ít nhất 1 mã thông báo được liên kết với email.

Mã thông báo là một bộ lọc thư rác tốt do tính chất hạn chế của chúng. Càng có nhiều người dùng trong hệ thống thì việc lấy được mã thông báo càng khó khăn và việc tạo bot càng tốn kém.

Con người, dữ liệu và kết nối xã hội của họ quan trọng hơn công nghệ

Môi trường trực tuyến được mô tả về mặt kỹ thuật là một giải pháp tương đối nguyên thủy. Nhưng điều quan trọng hơn ở đây không phải là quá nhiều công nghệ như con người mà là các kết nối xã hội và dữ liệu (nội dung) được tạo ra trong môi trường.

Cộng đồng xã hội được tạo, trong đó các thành viên có số nhận dạng chung (email và tên miền riêng của họ) và dữ liệu có cấu trúc (với địa chỉ URN, bản thể luận và đối tượng JSON), khi giải pháp kỹ thuật tốt hơn xuất hiện, có thể chuyển tất cả dữ liệu này sang môi trường trực tuyến khác, đồng thời duy trì các kết nối đã hình thành (xếp hạng, xếp hạng) và nội dung.

Bài đăng này mô tả một trong những yếu tố của cộng đồng mạng tự tổ chức, ngoài môi trường trực tuyến phi tập trung, bao gồm một số khu vực ngoại tuyến giúp tăng lợi ích của môi trường trực tuyến và là “khách hàng” quyết định phần lớn chức năng của nó. Nhưng đây là chủ đề của các bài viết khác không liên quan trực tiếp đến CNTT và công nghệ.

Nguồn: www.habr.com

Thêm một lời nhận xét