A small tool to view real-world ActivityPub objects as JSON! Enter a URL
or username from Mastodon or a similar service below, and we'll send a
request with
the right
Accept
header
to the server to view the underlying object.
{
"@context": "https://www.w3.org/ns/activitystreams",
"type": "OrderedCollectionPage",
"orderedItems": [
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:865389137181777920",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Tài sản còn lại nhiu đây.",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/865389137181777920",
"published": "2018-07-16T00:27:28+00:00",
"source": {
"content": "Tài sản còn lại nhiu đây.",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:865389137181777920/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:865207938157092864",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "10 token cho chức vô địch, ai bắt Pháp nhào vô nhanh nha. ",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/865207938157092864",
"published": "2018-07-15T12:27:27+00:00",
"source": {
"content": "10 token cho chức vô địch, ai bắt Pháp nhào vô nhanh nha. ",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:865207938157092864/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:865038815198437376",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Mình nằm croatia, ai muốn gỡ token thì bơi vào nha. ",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/865038815198437376",
"published": "2018-07-15T01:15:25+00:00",
"source": {
"content": "Mình nằm croatia, ai muốn gỡ token thì bơi vào nha. ",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:865038815198437376/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:864668011680268288",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "\"Cửa nào\" cho Will Nguyễn? <br /><br />Theo dõi truyền thông nhà nước, sẽ thấy một điều ngạc nhiên trong vụ Will, đó là họ dùng chữ \"biểu tình\". <br /><br />Nếu trước giờ khi đề cập đến các vụ biểu tình, bồi bút đảng đều viết tránh đi là gây rối, tụ tập, kẹt xe..., thì ở vụ này, họ gọi thẳng là Will về nước biểu tình. <br /><br />Nếu bạn nghĩ là công dân có quyền biểu tình, vậy có gì sai? Nghĩ vậy là đúng, nhưng tiếc là Will không phải công dân (Việt Nam). Anh ta biểu tình ở Mỹ thì ok.<br /><br />Bắt được Will, đảng sản vớ được một con cá to hoàn hảo cho mọi khía cạnh lý luận. <br /><br />- Về luật, Will sai, anh ta không có quyền biểu tình ở VN, nên bị bắt bị đánh là biện pháp nghiệp vụ với tội phạm. Điều này lý giải vì sao chính quyền Mỹ phản ứng khá yếu ớt tới lúc này. Mọi video hay hình ảnh đều là bằng chứng chống lại Will.<br /><br />- Will là một cái cớ không thể hay hơn để nói rằng những cuộc biểu tình này là do thế lực nước ngoài kích động, xúi dục. Đó là lý do họ không ngần ngại khi dùng chữ biểu tình.<br /><br />Dự là Will sẽ được tặng 5-7 cuốn, và nhốt đó chờ Trump đem quà đến chuộc về. Thật là một công ba bốn tiện. <br /><br />So sánh, nếu bạn nhớ vụ anh sinh viên Mỹ chết ở Bắc Hàn, anh ta chỉ mới lấy mấy tờ tuyên truyền tính cất làm kỉ niệm thôi. Nếu anh sinh viên đó tham gia kích động biểu tình lật đổ Kim Jong Un, dám anh ta bị nhồi vào thuốc súng bắn lên trời. <br /><br /> ",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/864668011680268288",
"published": "2018-07-14T00:41:58+00:00",
"source": {
"content": "\"Cửa nào\" cho Will Nguyễn? \n\nTheo dõi truyền thông nhà nước, sẽ thấy một điều ngạc nhiên trong vụ Will, đó là họ dùng chữ \"biểu tình\". \n\nNếu trước giờ khi đề cập đến các vụ biểu tình, bồi bút đảng đều viết tránh đi là gây rối, tụ tập, kẹt xe..., thì ở vụ này, họ gọi thẳng là Will về nước biểu tình. \n\nNếu bạn nghĩ là công dân có quyền biểu tình, vậy có gì sai? Nghĩ vậy là đúng, nhưng tiếc là Will không phải công dân (Việt Nam). Anh ta biểu tình ở Mỹ thì ok.\n\nBắt được Will, đảng sản vớ được một con cá to hoàn hảo cho mọi khía cạnh lý luận. \n\n- Về luật, Will sai, anh ta không có quyền biểu tình ở VN, nên bị bắt bị đánh là biện pháp nghiệp vụ với tội phạm. Điều này lý giải vì sao chính quyền Mỹ phản ứng khá yếu ớt tới lúc này. Mọi video hay hình ảnh đều là bằng chứng chống lại Will.\n\n- Will là một cái cớ không thể hay hơn để nói rằng những cuộc biểu tình này là do thế lực nước ngoài kích động, xúi dục. Đó là lý do họ không ngần ngại khi dùng chữ biểu tình.\n\nDự là Will sẽ được tặng 5-7 cuốn, và nhốt đó chờ Trump đem quà đến chuộc về. Thật là một công ba bốn tiện. \n\nSo sánh, nếu bạn nhớ vụ anh sinh viên Mỹ chết ở Bắc Hàn, anh ta chỉ mới lấy mấy tờ tuyên truyền tính cất làm kỉ niệm thôi. Nếu anh sinh viên đó tham gia kích động biểu tình lật đổ Kim Jong Un, dám anh ta bị nhồi vào thuốc súng bắn lên trời. \n\n ",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:864668011680268288/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:864032849468313600",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Cá độ là hơm có tốt đâu nha các bạn.",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/864032849468313600",
"published": "2018-07-12T06:38:04+00:00",
"source": {
"content": "Cá độ là hơm có tốt đâu nha các bạn.",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:864032849468313600/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:863787542763933696",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Trái đất nhỏ hẹp, con tạo xoay vần. <br /><br />Những người cộng sản vô thần nên thường ngạo mạn, bất chấp đúng sai, bất chấp đạo lý mà chỉ biết đến quyền lực, tiền bạc. <br /><br />Mà ở đời còn có đạo trời nữa. ",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers",
"https://www.minds.com/api/activitypub/users/859444127861841939"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/863787542763933696",
"published": "2018-07-11T14:23:18+00:00",
"inReplyTo": "https://www.minds.com/api/activitypub/users/859444127861841939/entities/urn:activity:863589114145673216",
"source": {
"content": "Trái đất nhỏ hẹp, con tạo xoay vần. \n\nNhững người cộng sản vô thần nên thường ngạo mạn, bất chấp đúng sai, bất chấp đạo lý mà chỉ biết đến quyền lực, tiền bạc. \n\nMà ở đời còn có đạo trời nữa. ",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:863787542763933696/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:863775749559685120",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Mình bắt Croatia, 10 token, đơn thuần là vì tình yêu với những đàn em của Davor Suker, Mijatovic, những chàng trai Nam Tư cộng sản cũ. <br /><br />Ai nhào vô kiếm token đi.",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/863775749559685120",
"published": "2018-07-11T13:36:26+00:00",
"source": {
"content": "Mình bắt Croatia, 10 token, đơn thuần là vì tình yêu với những đàn em của Davor Suker, Mijatovic, những chàng trai Nam Tư cộng sản cũ. \n\nAi nhào vô kiếm token đi.",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:863775749559685120/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:862538808731123712",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Bạn nhậu.<br /><br />Nghe Sài Gòn tăng cường giới nghiêm, nên cha con tui đi lánh bụi trốn đời. ",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/862538808731123712",
"published": "2018-07-08T03:41:17+00:00",
"source": {
"content": "Bạn nhậu.\n\nNghe Sài Gòn tăng cường giới nghiêm, nên cha con tui đi lánh bụi trốn đời. ",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:862538808731123712/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861934781051527168",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Minds - chuyện private key, phần 2. Tại sao lại phải gửi key lên server? <br /><br />Phần này tiếp theo phần trước, giải thích cho các bạn dưới góc nhìn kỹ thuật và trả lời câu hỏi “tại sao minds lại gửi key lên server”. Việc giải thích này hoàn toàn dưới góc nhìn và trình độ của tôi, nhằm mục đích cho các bạn hiểu được những gì minds đang làm, từ đó có đánh giá đúng về dịch vụ mà mình đang sử dụng. <br /><br />Phần trước, các bạn đã hiểu private key là gì, và Minds đã vi phạm nguyên tắc cơ bản là không được đem cái key này ra khỏi máy của bạn. Vậy tại sao Minds lại làm vậy, phải chăng họ cố tình làm bậy, hay vì họ thiếu hiểu biết, hay vì một lý do nào khác? <br /><br />Nếu các bạn sử dụng một số dịch vụ tin nhắn bí mật của các ứng dụng như Telegram hoặc whatsapp, khi bạn chọn chế độ này, sẽ có một khoảng thời gian chờ người phía bên kia chấp nhận, hoặc đợi người phía bên kia online thì bạn mới có thể bắt đầu gửi tin nhắn. Chuyện gì xảy ra trong thời gian này? <br /><br />Đó là vì để thiết lập một cuộc trò chuyện bí mật, hai người dùng cuối phải đồng ý trao public key cho nhau, bạn sẽ không thể gửi tin nhắn bí mật đi khi chưa nhận được public key của người kia. Vì hệ thống không biết lấy gì để mã hoá. <br /><br />Khi hiện thực minds, các kỹ sư của minds ban đầu cũng đi theo hướng suy nghĩ đó, họ giải quyết bằng cách khi người dùng nhập mật mã tin nhắn, họ gửi sẵn public key này lên server để khi ai đó muốn chat với người dùng này, thì họ sẽ lấy public key này về. Vấn đề tạm thời được giải quyết. Bạn có thể thấy trong app chat trên điện thoại của ứng dụng, khi ai đó chưa dùng chức năng messenger, bạn phải bấm vào nút invite. Động tác invite này chính là để “dụ dỗ” người dùng gửi public key lên server nhằm thiết lập cuộc trò chuyện.<br /><br />Chuyện public key gửi đi không có gì nguy hiểm. Mọi chuyện vẫn tốt đẹp tới đây, cho tới khi họ gặp một vấn đề khác. <br /><br />Nếu bạn đã sử dụng dịch vụ secret chat của Facebook, chắc bạn đã biết bạn không thể dùng secret chat trên web, đúng không? Đó là vì giới hạn của các ứng dụng chạy trên trình duyệt. <br /><br />Các ứng dụng chạy trên trình duyệt web bị một giới hạn về mặt bảo mật, nó không thể truy cập hệ thống file, cũng như không thể truy cập một số thông tin phần cứng của thiết bị…, và một trong những giới hạn là nó không thể sinh ra cặp khoá public-private key. <br /><br />Facebook không thể giải quyết chuyện này, cũng như các dịch vụ chat khác không thể, vì vậy chức năng chat bí mật của họ chỉ có thể chạy trên điện thoại hoặc ứng dụng native (các ứng dụng cài trên desktop). <br /><br />Minds đã quyết tâm vượt qua facebook và các ứng dụng chat khác ở chỗ này, bằng cách: Họ gửi private key lên server. <br /><br />Hành động này khiến cho toàn bộ nỗ lực bảo mật của họ trờ thành trò cười, một động tác work-around hết sức trẻ con, mà trong ngành lập trình chúng tôi gọi là “code-lụi”. <br /><br />Trên những trả lời của Ottman về vấn đề này, anh ta luôn nói là ứng dụng của anh ta vượt mặt facebook và an toàn hơn facebook, có lẽ, họ đã vượt qua facebook ở khoản code lụi này. <br /><br />Phần 1. <br /><a href=\"https://www.minds.com/newsfeed/861558162993475584\" target=\"_blank\">https://www.minds.com/newsfeed/861558162993475584</a><br /> <br /><br /><br /><br /><br />",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/861934781051527168",
"published": "2018-07-06T11:41:05+00:00",
"source": {
"content": "Minds - chuyện private key, phần 2. Tại sao lại phải gửi key lên server? \n\nPhần này tiếp theo phần trước, giải thích cho các bạn dưới góc nhìn kỹ thuật và trả lời câu hỏi “tại sao minds lại gửi key lên server”. Việc giải thích này hoàn toàn dưới góc nhìn và trình độ của tôi, nhằm mục đích cho các bạn hiểu được những gì minds đang làm, từ đó có đánh giá đúng về dịch vụ mà mình đang sử dụng. \n\nPhần trước, các bạn đã hiểu private key là gì, và Minds đã vi phạm nguyên tắc cơ bản là không được đem cái key này ra khỏi máy của bạn. Vậy tại sao Minds lại làm vậy, phải chăng họ cố tình làm bậy, hay vì họ thiếu hiểu biết, hay vì một lý do nào khác? \n\nNếu các bạn sử dụng một số dịch vụ tin nhắn bí mật của các ứng dụng như Telegram hoặc whatsapp, khi bạn chọn chế độ này, sẽ có một khoảng thời gian chờ người phía bên kia chấp nhận, hoặc đợi người phía bên kia online thì bạn mới có thể bắt đầu gửi tin nhắn. Chuyện gì xảy ra trong thời gian này? \n\nĐó là vì để thiết lập một cuộc trò chuyện bí mật, hai người dùng cuối phải đồng ý trao public key cho nhau, bạn sẽ không thể gửi tin nhắn bí mật đi khi chưa nhận được public key của người kia. Vì hệ thống không biết lấy gì để mã hoá. \n\nKhi hiện thực minds, các kỹ sư của minds ban đầu cũng đi theo hướng suy nghĩ đó, họ giải quyết bằng cách khi người dùng nhập mật mã tin nhắn, họ gửi sẵn public key này lên server để khi ai đó muốn chat với người dùng này, thì họ sẽ lấy public key này về. Vấn đề tạm thời được giải quyết. Bạn có thể thấy trong app chat trên điện thoại của ứng dụng, khi ai đó chưa dùng chức năng messenger, bạn phải bấm vào nút invite. Động tác invite này chính là để “dụ dỗ” người dùng gửi public key lên server nhằm thiết lập cuộc trò chuyện.\n\nChuyện public key gửi đi không có gì nguy hiểm. Mọi chuyện vẫn tốt đẹp tới đây, cho tới khi họ gặp một vấn đề khác. \n\nNếu bạn đã sử dụng dịch vụ secret chat của Facebook, chắc bạn đã biết bạn không thể dùng secret chat trên web, đúng không? Đó là vì giới hạn của các ứng dụng chạy trên trình duyệt. \n\nCác ứng dụng chạy trên trình duyệt web bị một giới hạn về mặt bảo mật, nó không thể truy cập hệ thống file, cũng như không thể truy cập một số thông tin phần cứng của thiết bị…, và một trong những giới hạn là nó không thể sinh ra cặp khoá public-private key. \n\nFacebook không thể giải quyết chuyện này, cũng như các dịch vụ chat khác không thể, vì vậy chức năng chat bí mật của họ chỉ có thể chạy trên điện thoại hoặc ứng dụng native (các ứng dụng cài trên desktop). \n\nMinds đã quyết tâm vượt qua facebook và các ứng dụng chat khác ở chỗ này, bằng cách: Họ gửi private key lên server. \n\nHành động này khiến cho toàn bộ nỗ lực bảo mật của họ trờ thành trò cười, một động tác work-around hết sức trẻ con, mà trong ngành lập trình chúng tôi gọi là “code-lụi”. \n\nTrên những trả lời của Ottman về vấn đề này, anh ta luôn nói là ứng dụng của anh ta vượt mặt facebook và an toàn hơn facebook, có lẽ, họ đã vượt qua facebook ở khoản code lụi này. \n\nPhần 1. \nhttps://www.minds.com/newsfeed/861558162993475584\n \n\n\n\n\n",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861934781051527168/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861775882016157696",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Yesterday, as I posted a status about the security error of Minds, there was a guy claiming himself to be an Anonymous member and gave the reply about this issue, with the answer below.<br /><br />First of all, I have to assert that this security error in messaging is not an interface bug, and even OttMan himself admitted me that the message sent on the web is not encrypted at the client, which means that Anonymous guy gave the firs lie when he claimed that it was just interface error. If that guy meant this error was caused due to an interface change (which implicitly means it was not true previously), then it is the second lie, because this type of coding wasn’t there before.<br /><br />Next, that Anonymous guy showed the message which he considered to be encrypted (if it was able to run properly), this is the third lie.<br /><br />We need to know that with the encryption algorithm, each different encryption key generates different encryption string. If the encryption is mapped to one to one, then the process of decoding that key is only a matter of hours or days, and then the security technique here is meaningless. So, that Anonymous guy simply knows nothing about coding and algorithm, and he just gave a very faking answer.<br /><br />About his answer, I found it to be very amateurish, and faking. If the answer was officially from administrators of Minds, then it means they underestimate the security knowledge of their own users. If the answer was just from an Anonymous support group for Minds, then we have to raise questions about this group. If the answer actually has nothing to do with Minds, then my question remains open for Minds to give official answer.<br /><br />Translated to english so this message can reach Ottman. :) ",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/861775882016157696",
"published": "2018-07-06T01:09:41+00:00",
"source": {
"content": "Yesterday, as I posted a status about the security error of Minds, there was a guy claiming himself to be an Anonymous member and gave the reply about this issue, with the answer below.\n\nFirst of all, I have to assert that this security error in messaging is not an interface bug, and even OttMan himself admitted me that the message sent on the web is not encrypted at the client, which means that Anonymous guy gave the firs lie when he claimed that it was just interface error. If that guy meant this error was caused due to an interface change (which implicitly means it was not true previously), then it is the second lie, because this type of coding wasn’t there before.\n\nNext, that Anonymous guy showed the message which he considered to be encrypted (if it was able to run properly), this is the third lie.\n\nWe need to know that with the encryption algorithm, each different encryption key generates different encryption string. If the encryption is mapped to one to one, then the process of decoding that key is only a matter of hours or days, and then the security technique here is meaningless. So, that Anonymous guy simply knows nothing about coding and algorithm, and he just gave a very faking answer.\n\nAbout his answer, I found it to be very amateurish, and faking. If the answer was officially from administrators of Minds, then it means they underestimate the security knowledge of their own users. If the answer was just from an Anonymous support group for Minds, then we have to raise questions about this group. If the answer actually has nothing to do with Minds, then my question remains open for Minds to give official answer.\n\nTranslated to english so this message can reach Ottman. :) ",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861775882016157696/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861575793975795712",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Ok để tôi nói ông nghe, nhà cô Minh Hạnh ĐANG BỊ ĐỨA NÀO KHỦNG BỐ?",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/861575793975795712",
"published": "2018-07-05T11:54:36+00:00",
"source": {
"content": "Ok để tôi nói ông nghe, nhà cô Minh Hạnh ĐANG BỊ ĐỨA NÀO KHỦNG BỐ?",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861575793975795712/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861558162993475584",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Minds - Chuyện token phần 1. <br /><br />Ngày hôm trước, tôi đã phạm một sai lầm lớn khi khẳng định rằng Minds lưu token ở local, sau đó tôi nhận ra Minds làm ngược lại. Điều này với chuyện thiết kế hệ thống thì đây là một sai lầm (vô cùng khủng khiếp), ý tôi nói ở đây là lỗi thiết kế rất nặng. Tôi muốn giải thích cho các bạn rõ hơn về vấn đề này, một cách dễ hiểu, nên hôm nay tôi sẽ bắt đầu lại chuyện này từ đầu. <br /><br />Đầu tiên, cần hiểu private key là gì?. <br /><br />Nói về bảo mật, thì thì người dùng thường nghĩ ngay đó là làm sao để bảo vệ cái mật khẩu của bạn. Thực ra chuyện đó không đơn giản như vậy, bởi khi dữ liệu đi từ máy bạn đến máy chủ của nhà cung cấp dịch vụ, có hàng trăm thứ có thể xảy ra dọc đường. Hiểu một cách đơn giản, ngoài chuyện bảo mật cái mật khẩu của bạn mà đây là trách nhiệm của bạn, thì ứng dụng phải đảm bảo chuyện dữ liệu đi dọc đường thoả mãn 1 - đến đúng địa chỉ, và 2- không bị xem lén. <br /><br />Đối với hacker (nhất là một giới hacker có quyền lực như đảng cộng sản), cách đơn giản nhất là họ có thể dựng lên những ứng dụng trung gian, đón, đọc và gửi trả lại tất cả những gì bạn gửi đi qua-lại giữa bạn và ứng dụng. Ứng dụng của bạn và server cứ ngỡ đang nói chuyện trực tiếp với nhau, nhưng thực ra bạn đang nói chuyện với một man-in-the-middle. <br /><br />Chuyện này luôn luôn xảy ra, vì vậy có những giải pháp ra đời. Ví dụ thế này: Ngày xưa khi chưa có smartfone, bạn muốn nói chuyện với một cô gái qua điện thoại nhà, để chắc ăn bố cô ta không bắt máy, bạn thoả thuận với cô ta là bạn sẽ nhá máy 2 lần trước khi gọi. <br /><br />Những giải pháp kiểu đó được gọi là các protocol (thủ tục), bạn phải tuân thủ các protocol đó nếu không muốn ông già cô gái đó nhấc máy. Và public-private key là một loại protocol như vậy. <br /><br />Ở thủ tục mã hoá này, ứng dụng người dùng sẽ định nghĩa ra 2 cái khoá, 1 gọi là public (công khai), và 1 là private (bí mật), ở phía đối lập, người cần giải mã cũng có 1 cặp mã khoá tương ứng. Hai người dùng (có thể hiểu là hai máy, hoặc 2 ứng dụng) sẽ trao đổi khoá công khai cho nhau, có thể trao đổi qua email, điện thoại, internet, tin nhắn, hoặc các ứng dụng tự tìm cách trao đổi cho nhau. <br /><br />Và khi chàng trai A muốn gửi cho cô gái B cái gì đó, thì anh ta sẽ mã hoá nó với cái public key cô gái B, và gửi cho B. Sau đó B dùng cái khoá riêng để giải mã nội dung này. Nếu cô ta muốn trả lời, cô ta sẽ làm tương tự, mã hoá với cái khoá của chàng trai A và gửi cho anh ta. Nếu hai người này không có khoá của nhau, họ không thể gửi tin nhắn hẹn nhau đi coi fim. <br /><br />Như vậy, cho dù có ai đó đứng ở giữa và nhận được tất cả thông điệp hai người gửi cho nhau, thì cũng không thể giải mã được vì không có khoá bí mật. Có thể hiểu cái khoá public như cái ổ khoá, còn cái khoá riêng là cái chìa khoá. Khi gửi tin nhắn đi, bạn khoá nó với cái ổ khoá của người nhận, và chỉ có người có cái chìa đó mới mở được. <br /><br />Nguyên tắc căn bản nhất của giải thuật này là bạn không được phép đem khoá riêng ra khỏi nhà mình, bằng bất cứ hình thức nào. Đây là nguyên tắc đầu tiên mà bất cứ ai sử dụng cách này cũng phải hiểu. Nó giống như khi ông thợ làm khoá làm cho bạn một cái khoá thật đẹp, thật tốt, với lời dặn đi dặn lại là đừng treo chìa khoá trước hàng rào thì bạn về treo ngay chìa khoá ở hàng rào. Việc cái khoá riêng (private key) chạy long nhong trên môi trường internet khiến cho giải thuật trở nên vô nghĩa. <br /><br />Vậy nên khi các chuyên gia bảo mật nói rằng Minds gửi private key lên server, tôi liền nghĩ ngay: Làm gì có thằng nào ngu dữ vậy? Sau đó tôi kiểm tra source code của Mind (ứng dụng điện thoại) thì quả là họ lưu key ở local và lấy code ở local. Điều này khẳng định nhận định của tôi, làm gì có thằng nào đi gửi private key lên server. Đó là nguyên tắc cơ bản mà học sinh tiểu học cũng phải biết chứ. <br /><br />Nhưng mà tôi sai, Minds gửi private key lên server, và có 1 dòng code gửi cái key đó về server mà tôi không đọc tới. Và mọi chuyện thay đổi từ đây. <br /><br />Phần sau, tôi sẽ giải thích tại sao Minds phải gửi private key lên server. <br /><br />——— <br /><br />Giải thích 1 số hiện tượng kỹ thuật bạn có thể đã thấy, ví dụ: <br />- Với whatsapp, khi bạn bắt đầu một cuộc gọi bí mật, hệ thống cần chờ thiết lập một ‘secrect conversation’, đây chính là giai đoạn hai bên trao đổi public key cho nhau. <br />- Với facebook secret chat, hiện tượng cũng xảy ra tương tự, và bạn có thể thấy là với web chat thì không có chức năng này. <br />- Điều này lý giải vì sao các group chat không thể hiện thực chức năng chat secret, vì việc trao đổi chéo các kiểu key này là không khả thi, tôi cũng chưa nghĩ ra làm thế nào. <br /><br />Nếu bạn không thả tín dụng, tôi sẽ không muốn viết nữa đâu. he he. ",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/861558162993475584",
"published": "2018-07-05T10:44:33+00:00",
"source": {
"content": "Minds - Chuyện token phần 1. \n\nNgày hôm trước, tôi đã phạm một sai lầm lớn khi khẳng định rằng Minds lưu token ở local, sau đó tôi nhận ra Minds làm ngược lại. Điều này với chuyện thiết kế hệ thống thì đây là một sai lầm (vô cùng khủng khiếp), ý tôi nói ở đây là lỗi thiết kế rất nặng. Tôi muốn giải thích cho các bạn rõ hơn về vấn đề này, một cách dễ hiểu, nên hôm nay tôi sẽ bắt đầu lại chuyện này từ đầu. \n\nĐầu tiên, cần hiểu private key là gì?. \n\nNói về bảo mật, thì thì người dùng thường nghĩ ngay đó là làm sao để bảo vệ cái mật khẩu của bạn. Thực ra chuyện đó không đơn giản như vậy, bởi khi dữ liệu đi từ máy bạn đến máy chủ của nhà cung cấp dịch vụ, có hàng trăm thứ có thể xảy ra dọc đường. Hiểu một cách đơn giản, ngoài chuyện bảo mật cái mật khẩu của bạn mà đây là trách nhiệm của bạn, thì ứng dụng phải đảm bảo chuyện dữ liệu đi dọc đường thoả mãn 1 - đến đúng địa chỉ, và 2- không bị xem lén. \n\nĐối với hacker (nhất là một giới hacker có quyền lực như đảng cộng sản), cách đơn giản nhất là họ có thể dựng lên những ứng dụng trung gian, đón, đọc và gửi trả lại tất cả những gì bạn gửi đi qua-lại giữa bạn và ứng dụng. Ứng dụng của bạn và server cứ ngỡ đang nói chuyện trực tiếp với nhau, nhưng thực ra bạn đang nói chuyện với một man-in-the-middle. \n\nChuyện này luôn luôn xảy ra, vì vậy có những giải pháp ra đời. Ví dụ thế này: Ngày xưa khi chưa có smartfone, bạn muốn nói chuyện với một cô gái qua điện thoại nhà, để chắc ăn bố cô ta không bắt máy, bạn thoả thuận với cô ta là bạn sẽ nhá máy 2 lần trước khi gọi. \n\nNhững giải pháp kiểu đó được gọi là các protocol (thủ tục), bạn phải tuân thủ các protocol đó nếu không muốn ông già cô gái đó nhấc máy. Và public-private key là một loại protocol như vậy. \n\nỞ thủ tục mã hoá này, ứng dụng người dùng sẽ định nghĩa ra 2 cái khoá, 1 gọi là public (công khai), và 1 là private (bí mật), ở phía đối lập, người cần giải mã cũng có 1 cặp mã khoá tương ứng. Hai người dùng (có thể hiểu là hai máy, hoặc 2 ứng dụng) sẽ trao đổi khoá công khai cho nhau, có thể trao đổi qua email, điện thoại, internet, tin nhắn, hoặc các ứng dụng tự tìm cách trao đổi cho nhau. \n\nVà khi chàng trai A muốn gửi cho cô gái B cái gì đó, thì anh ta sẽ mã hoá nó với cái public key cô gái B, và gửi cho B. Sau đó B dùng cái khoá riêng để giải mã nội dung này. Nếu cô ta muốn trả lời, cô ta sẽ làm tương tự, mã hoá với cái khoá của chàng trai A và gửi cho anh ta. Nếu hai người này không có khoá của nhau, họ không thể gửi tin nhắn hẹn nhau đi coi fim. \n\nNhư vậy, cho dù có ai đó đứng ở giữa và nhận được tất cả thông điệp hai người gửi cho nhau, thì cũng không thể giải mã được vì không có khoá bí mật. Có thể hiểu cái khoá public như cái ổ khoá, còn cái khoá riêng là cái chìa khoá. Khi gửi tin nhắn đi, bạn khoá nó với cái ổ khoá của người nhận, và chỉ có người có cái chìa đó mới mở được. \n\nNguyên tắc căn bản nhất của giải thuật này là bạn không được phép đem khoá riêng ra khỏi nhà mình, bằng bất cứ hình thức nào. Đây là nguyên tắc đầu tiên mà bất cứ ai sử dụng cách này cũng phải hiểu. Nó giống như khi ông thợ làm khoá làm cho bạn một cái khoá thật đẹp, thật tốt, với lời dặn đi dặn lại là đừng treo chìa khoá trước hàng rào thì bạn về treo ngay chìa khoá ở hàng rào. Việc cái khoá riêng (private key) chạy long nhong trên môi trường internet khiến cho giải thuật trở nên vô nghĩa. \n\nVậy nên khi các chuyên gia bảo mật nói rằng Minds gửi private key lên server, tôi liền nghĩ ngay: Làm gì có thằng nào ngu dữ vậy? Sau đó tôi kiểm tra source code của Mind (ứng dụng điện thoại) thì quả là họ lưu key ở local và lấy code ở local. Điều này khẳng định nhận định của tôi, làm gì có thằng nào đi gửi private key lên server. Đó là nguyên tắc cơ bản mà học sinh tiểu học cũng phải biết chứ. \n\nNhưng mà tôi sai, Minds gửi private key lên server, và có 1 dòng code gửi cái key đó về server mà tôi không đọc tới. Và mọi chuyện thay đổi từ đây. \n\nPhần sau, tôi sẽ giải thích tại sao Minds phải gửi private key lên server. \n\n——— \n\nGiải thích 1 số hiện tượng kỹ thuật bạn có thể đã thấy, ví dụ: \n- Với whatsapp, khi bạn bắt đầu một cuộc gọi bí mật, hệ thống cần chờ thiết lập một ‘secrect conversation’, đây chính là giai đoạn hai bên trao đổi public key cho nhau. \n- Với facebook secret chat, hiện tượng cũng xảy ra tương tự, và bạn có thể thấy là với web chat thì không có chức năng này. \n- Điều này lý giải vì sao các group chat không thể hiện thực chức năng chat secret, vì việc trao đổi chéo các kiểu key này là không khả thi, tôi cũng chưa nghĩ ra làm thế nào. \n\nNếu bạn không thả tín dụng, tôi sẽ không muốn viết nữa đâu. he he. ",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861558162993475584/activity"
},
{
"type": "Create",
"actor": "https://www.minds.com/api/activitypub/users/851817644850946062",
"object": {
"type": "Note",
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861466491790712832",
"attributedTo": "https://www.minds.com/api/activitypub/users/851817644850946062",
"content": "Ngày hôm qua sau khi tôi đăng bài viết về lỗi bảo mật của minds, thì có một nick vốn tự xưng là Anonymous đăng bài viết trả lời về việc này với câu trả lời phía dưới đây. <br /><br />Đầu tiên phải khẳng định lỗi tin nhắn này không phải lỗi giao diện, chính OttMan đã thừa nhận với tôi là tin nhắn gửi đi trên web không được mã hoá ở client, như vậy nói lỗi giao diện là NÓI LÁO. Nếu nói lỗi này do đổi giao diện (tức ngầm nói rằng trước kia không có), thì là NÓI LÁO LẦN 2, vì chuyện mã hoá này chưa từng xảy ra. <br /><br />Tiếp theo, anh ta đưa ra đoạn tin nhắn được cho là đã mã hoá (nếu nó chạy đúng), điều này lại là NÓI LÁO LẦN 3. <br /><br />Chúng ta cần biết là với giải thuật mã hoá, thì với mỗi 1 key mã hoá khác nhau, sẽ cho ra 1 chuỗi mã hoá khác nhau. Nếu mã hoá là ánh xạ 1-1 thì giải mã tìm ra key chỉ là vấn đề vài giờ hoặc vài ngày, và sau đó thì gỉai thuật là vô nghĩa. Vì vậy người viết ra điều này không hiểu gì về mã hoá và giải thuật cả, mà đây là một câu trả lời hết sức lùa gà mang phong cách Dr Thuỳ Trang Nguyễn. <br /><br />Về câu trả lời này, tôi đánh giá rằng nó hết sức nghiệp dư, và lùa gà. Nếu đây là câu trả lời chính thức của Minds, thì họ đã quá xem thường người dùng. Nếu đây là đại diện của nhóm Anonymous support minds, thì chúng ta phải đặt câu hỏi về nhóm này. Nếu đây không là đại diện của Minds, thì câu hỏi này vẫn còn để ngỏ dành cho minds có 1 câu trả lời chính thức.<br /><br />Ai muốn đọc tiếp phân tích thì thả token để tôi boot bài viết.",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://www.minds.com/api/activitypub/users/851817644850946062/followers"
],
"tag": [],
"url": "https://www.minds.com/newsfeed/861466491790712832",
"published": "2018-07-05T04:40:16+00:00",
"source": {
"content": "Ngày hôm qua sau khi tôi đăng bài viết về lỗi bảo mật của minds, thì có một nick vốn tự xưng là Anonymous đăng bài viết trả lời về việc này với câu trả lời phía dưới đây. \n\nĐầu tiên phải khẳng định lỗi tin nhắn này không phải lỗi giao diện, chính OttMan đã thừa nhận với tôi là tin nhắn gửi đi trên web không được mã hoá ở client, như vậy nói lỗi giao diện là NÓI LÁO. Nếu nói lỗi này do đổi giao diện (tức ngầm nói rằng trước kia không có), thì là NÓI LÁO LẦN 2, vì chuyện mã hoá này chưa từng xảy ra. \n\nTiếp theo, anh ta đưa ra đoạn tin nhắn được cho là đã mã hoá (nếu nó chạy đúng), điều này lại là NÓI LÁO LẦN 3. \n\nChúng ta cần biết là với giải thuật mã hoá, thì với mỗi 1 key mã hoá khác nhau, sẽ cho ra 1 chuỗi mã hoá khác nhau. Nếu mã hoá là ánh xạ 1-1 thì giải mã tìm ra key chỉ là vấn đề vài giờ hoặc vài ngày, và sau đó thì gỉai thuật là vô nghĩa. Vì vậy người viết ra điều này không hiểu gì về mã hoá và giải thuật cả, mà đây là một câu trả lời hết sức lùa gà mang phong cách Dr Thuỳ Trang Nguyễn. \n\nVề câu trả lời này, tôi đánh giá rằng nó hết sức nghiệp dư, và lùa gà. Nếu đây là câu trả lời chính thức của Minds, thì họ đã quá xem thường người dùng. Nếu đây là đại diện của nhóm Anonymous support minds, thì chúng ta phải đặt câu hỏi về nhóm này. Nếu đây không là đại diện của Minds, thì câu hỏi này vẫn còn để ngỏ dành cho minds có 1 câu trả lời chính thức.\n\nAi muốn đọc tiếp phân tích thì thả token để tôi boot bài viết.",
"mediaType": "text/plain"
}
},
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/entities/urn:activity:861466491790712832/activity"
}
],
"id": "https://www.minds.com/api/activitypub/users/851817644850946062/outbox",
"partOf": "https://www.minds.com/api/activitypub/users/851817644850946062/outboxoutbox"
}