프리넷
Freenet개발자 | [1] |
---|---|
초기 릴리즈 | 2000년 3월, | 전
안정된 릴리스 | ; 전 ( |
저장소 | |
기입처 | 자바 |
운영 체제 | 크로스 플랫폼:Unix 계열(Android, Linux, BSD, macOS), Microsoft Windows |
플랫폼 | 자바 |
이용가능기간: | 영어, 프랑스어, 이탈리아어, 독일어, 네덜란드어, 스페인어, 포르투갈어, 스웨덴어, 노르웨이어, 중국어, 러시아어[3] |
유형 | 익명 애플리케이션, 피어 투 피어, 친구 투 친구, 오버레이 네트워크, 혼합 네트워크, 분산 데이터스토어 |
면허증. | GNU General Public License 버전3만 |
웹 사이트 | freenetproject |
시리즈의 일부 |
파일 공유 |
---|
파일 호스트 |
비디오 공유 사이트 |
비트토렌트 사이트 |
미디어 서버 |
테크놀로지 |
파일 공유 네트워크 |
학업의 |
P2P 클라이언트 |
익명 파일 공유 |
역사와 사회적 측면 |
국가 또는 지역별 |
비교 |
프리넷은 검열과 익명 통신을 위한 피어 투 피어 플랫폼입니다.분산형 분산형 데이터 스토어를 사용하여 정보를 보관하고 전달하며,[4][5]: 151 검열 우려 없이 웹에 게시하고 통신하기 위한 무료 소프트웨어 제품군을 갖추고 있습니다.프리넷과 그 관련 툴의 일부는 Ian Clarke에 의해 원래 설계되었으며, Ian Clarke는 프리넷의 목표를 강력한 익명 [6][7]보호와 함께 인터넷 상에서 언론의 자유를 제공하는 것이라고 정의했습니다.
프리넷의 분산형 데이터 스토어는 많은 서드파티 프로그램 및 플러그인에서 마이크로블로그와 [8]미디어 공유, 익명 및 분산형 [9]버전 추적, 블로그,[10] 분산형 스팸 [11]방지를 위한 일반적인 신뢰 웹, 스니커넷을 [12]통해 프리넷을 사용하는 신발가게 등을 제공하기 위해 사용됩니다.
역사
프리넷의 기원은 이안 클라크가 1999년 [13][14][15]여름 졸업 필수조건으로 수료한 에든버러 대학의 학생 프로젝트에서 찾을 수 있다.Ian Clarke의 미발표 보고서 "A distributed distributed information storage and retrieval system"(1999)은 다른 연구자들과 협력하여 작성된 주요 논문인 "Freenet: A distributed anonymous information storage and retrieval system"(2001)[16][17]의 기초를 제공했다.CiteSeer에 따르면,[18] 그것은 2002년에 가장 자주 인용된 컴퓨터 과학 기사 중 하나가 되었다.
프리넷은 사용자의 컴퓨터에 배포된 암호화된 콘텐츠의 작은 조각을 저장하고 콘텐츠 요구를 전달하는 중간 컴퓨터를 통해서만 접속하여 전체 파일의 내용을 인식하지 않고 돌려보냄으로써 인터넷상의 라우터가 패킷을 라우팅하는 것과 같이 인터넷상에서 익명성을 제공할 수 있습니다.Freenet은 캐싱 기능, 강력한 암호화 레이어, 중앙 [17]집중식 구조에 의존하지 않는 것을 제외하고 파일에 대해 모든 것을 알고 있습니다.이를 통해 사용자는 익명으로 게시하거나 다양한 종류의 [5]: 152 정보를 검색할 수 있습니다.
프리넷은 2000년부터 지속적으로 개발되고 있습니다.
2008년 5월 8일에 발매된 Freenet 0.7은 몇 가지 근본적인 변경을 포함한 주요 리라이트입니다.가장 근본적인 변경은 다크넷 동작 지원입니다.버전 0.7은 2가지 동작 모드를 제공했습니다.친구에게만 접속하는 모드와 다른 프리넷 사용자와 접속하는 오픈넷 모드입니다.두 모드를 동시에 실행할 수 있습니다.사용자가 순수 다크넷 조작으로 전환하면 프리넷은 외부에서 감지하기가 매우 어려워진다.다크넷 모드용으로 작성된 트랜스포트 레이어에서는, 이러한 접속이 소규모의 [19]: 815–816 구조를 따르고 있는 한, 메쉬 네트워크내에서 일반적으로 볼 수 있는 제한 루트를 개입시켜 통신할 수 있습니다.그 외의 변경에는, TCP 에서 UDP 로의 전환이 있습니다.이것에 의해, UDP 홀 펀칭과 함께,[20] 네트워크내의 피어간의 메시지의 고속 송신이 가능하게 됩니다.
2009년 6월 12일에 발매된 Freenet 0.7.5에서는 0.7보다 다양한 기능이 향상되었습니다.여기에는 메모리 사용량 감소, 콘텐츠 삽입 및 검색 속도 향상, 프리사이트 열람에 사용되는 FProxy Web 인터페이스 대폭 향상, 다수의 작은 버그 수정, 성능 향상 및 사용 편의성 향상 등이 포함됩니다.버전 0.7.5 에는, 새로운 버전의 Windows [21]인스톨러도 부속되어 있습니다.
2009년 7월 30일에 발표된 빌드 1226에서 작성된 기능에는 네트워크상의 공격자에 대한 보안 강화와 [22]노드를 실행하고 있는 컴퓨터의 물리적 탈취가 모두 포함되어 있습니다.
2015년 7월 11일에 출시된 빌드 1468에서 Freenet 코어는 db4o 데이터베이스 사용을 중지하고 스팸 [23]방지 기능을 제공하는 Web of Trust 플러그인에 대한 효율적인 인터페이스 기반을 구축했습니다.
프리넷은 항상 무료 소프트웨어였지만 2011년까지는 사용자가 Java를 설치해야 했습니다.이 문제는 프리넷이 Java 플랫폼의 무료 오픈 소스 구현인 OpenJDK와 호환되도록 함으로써 해결되었습니다.
2015년 2월 11일 프리넷은 "전면 감시로부터 보호"[24][25][26]를 받은 공로로 SUMA-Award를 받았다.
기능 및 사용자 인터페이스
프리넷은 일본의 피어 투 피어 파일 공유 프로그램인 Winny, Share, Perfect Dark의 모델이었지만, 이 모델은 Bittorrent, Emuel 등의 p2p 네트워크와는 다릅니다.프리넷은 기본 네트워크 구조와 프로토콜을 사용자가 네트워크와 상호 작용하는 방식에서 분리합니다. 그 결과 프리넷 네트워크의 콘텐츠에 액세스하는 방법은 다양합니다.가장 간단한 방법은 노드소프트웨어에 통합되어 네트워크상의 콘텐츠에 대한 웹 인터페이스를 제공하는 FProxy를 경유하는 것입니다.FProxy를 사용하면 사용자는 프리사이트(일반 HTML 및 관련 도구를 사용하지만 콘텐츠가 기존 웹 서버가 아닌 프리넷에 저장되어 있는 웹 사이트)를 참조할 수 있습니다.웹 인터페이스는 대부분의 설정 작업 및 노드 관리 작업에도 사용됩니다.노드 소프트웨어에 로드된 개별 애플리케이션 또는 플러그인을 사용함으로써 사용자는 웹 포럼이나 Usenet 또는 기존의 P2P "파일 공유" 인터페이스와 유사한 인터페이스와 같은 다른 방법으로 네트워크와 상호 작용할 수 있습니다.
프리넷은 프리사이트를 참조하기 위한 HTTP 인터페이스를 제공하지만 월드 와이드 웹 프록시는 아닙니다.프리넷은 프리넷 네트워크에 이전에 삽입된 콘텐츠에만 액세스할 수 있습니다.이런 식으로, 이것은 Tor의 프록시 같은 익명의 프록시 소프트웨어보다 Tor의 양파 서비스와 더 유사하다.
프리넷의 초점은 언론의 자유와 익명성에 있다.그 때문에, 프리넷은 익명성 부분과 관련된(직접 또는 간접적으로) 특정의 포인트에서 다르게 행동합니다.프리넷은 네트워크에 데이터를 삽입(업로드)하는 사람과 네트워크에서 데이터를 취득하는 사람(다운로드)의 양쪽 모두의 익명성을 보호하려고 합니다.파일 공유 시스템과 달리 파일 또는 파일 그룹을 업로드한 후에도 업로더가 네트워크에 남아 있을 필요가 없습니다.대신 업로드 프로세스 중에 파일이 청크로 분할되어 네트워크상의 다양한 다른 컴퓨터에 저장됩니다.다운로드 시 이러한 청크가 발견되어 재조립됩니다.프리넷 네트워크상의 모든 노드는 피어로부터의 요구를 라우팅하기 위해 사용하는 파일 및 대역폭을 보유하기 위한 스토리지 공간을 제공합니다.
익명성 요건의 직접적인 결과로서 콘텐츠를 요구하는 노드는 일반적으로 콘텐츠를 가진 노드에 직접 접속하지 않습니다.대신 요청은 여러 매개체를 통해 라우팅됩니다.이 매개체 중 어느 노드가 요구를 작성했는지, 어느 노드가 요구를 가지고 있는지 알 수 없습니다.그 결과 네트워크에서 파일 전송에 필요한 총 대역폭이 다른 시스템보다 높아져 전송 속도가 느려질 수 있습니다.특히, 액세스 빈도가 낮은 컨텐츠에 대해서는 그렇습니다.
버전 0.7 이후 프리넷은 오픈넷과 다크넷의 두 가지 보안 수준을 제공합니다.opennet을 사용하면 사용자는 임의의 다른 사용자에게 접속합니다.다크넷을 사용하면 사용자는 이전에 공개 키를 교환한 노드 참조라는 이름의 "친구"에만 접속합니다.두 모드를 함께 사용할 수 있습니다.
내용
프리넷의 설립자들은 진정한 언론의 자유는 오직 진정한 익명성과 함께 오고 프리넷의 유익한 사용이 부정적인 [27]사용보다 더 크다고 주장한다.그들의 견해는 언론의 자유 자체가 다른 고려사항과 모순되는 것이 아니라 정보가 범죄가 아니라는 것이다.프리넷은 어떤 집단이 어떤 데이터에 자신의 신념이나 가치를 강요할 가능성을 배제하려고 합니다.비록 많은 주들이 서로 다른 범위로의 의사소통을 검열하지만, 그들은 한 기관이 어떤 정보를 검열하고 어떤 정보를 허용할지를 결정해야 한다는 점에서 하나의 공통점을 공유한다.한 집단에게 받아들여질 수 있는 것은 다른 집단에게 불쾌하거나 심지어 위험하다고 여겨질 수 있다.기본적으로 프리넷의 목적은 어느 누구도 무엇이 허용 가능한지를 결정할 수 없도록 하는 것입니다.
권위주의 국가에서 프리넷이 사용됐다는 보도는 프리넷의 목표 특성상 추적하기 어렵다.프리넷 차이나라는 그룹은 2001년부터 프리넷 소프트웨어를 중국 사용자에게 소개한 뒤 중국 본토 당국의 차단으로 이메일과 디스크에 담아 중국 내에 배포하곤 했다.2002년에는 프리넷 차이나에 수천 명의 전용 [28]: 70–71 사용자가 있었다고 보고되었습니다.그러나 프리넷 오픈넷 트래픽은 [citation needed]2010년대 무렵 중국에서 차단되었습니다.
테크니컬 디자인
프리넷 파일 공유 네트워크는 문서를 저장하고 HTTP와 같은 프로토콜에서 가능한 것처럼 나중에 관련 키로 문서를 검색할 수 있도록 합니다.네트워크는 높은 존속성을 갖도록 설계되어 있습니다.시스템에는 중앙 서버가 없으며 프리넷 설계자를 포함한 개인 또는 조직의 관리 대상이 아닙니다.코드베이스 사이즈가 [29]192.000 행을 넘습니다.프리넷에 저장된 정보는 네트워크 전체에 배포되어 여러 노드에 저장됩니다.데이터의 암호화와 요구의 릴레이에서는, 누가 프리넷에 컨텐츠를 삽입했는지, 누가 그 컨텐츠를 요구했는지, 컨텐츠가 어디에 보존되어 있는지를 판별하기 어렵습니다.이것은 참가자들의 익명성을 보호하고 또한 특정 콘텐츠를 검열하는 것을 매우 어렵게 만든다.콘텐츠는 암호화되어 저장되므로 노드의 오퍼레이터도 노드에 저장되어 있는 내용을 판단하기가 어렵습니다.이는 타당한 거부 가능성을 제공합니다.이는 요청 릴레이와 조합하여 서비스 공급자를 보호하는 세이프 하버 법률이 프리넷 노드 오퍼레이터도 보호할 수 있음을 의미합니다.이 주제에 대해 질문을 받았을 때 프리넷 개발자들은 아무것도 필터링할 수 없는 것이 안전한 [30][31]선택이라는 EFF 논의에 응한다.
데이터 분산 저장 및 캐싱
Winny, Share, Perfect Dark와 마찬가지로 Freenet은 노드 간에 데이터를 전송할 뿐만 아니라 실제로 데이터를 저장하여 대용량 분산 캐시 역할을 합니다.이를 위해 각 노드는 데이터를 저장하기 위해 일정량의 디스크 공간을 할당합니다.이것은 노드 운영자가 구성할 수 있지만 일반적으로 수 GB(또는 그 이상)입니다.
일반적으로 프리넷의 파일은 여러 개의 작은 블록으로 분할되며 이중 블록을 생성하여 용장성을 제공합니다.각 블록은 독립적으로 처리되므로 단일 파일에 여러 노드에 저장된 부분이 있을 수 있습니다.
프리넷의 정보 흐름은 eMule이나 BitTorrent 등의 네트워크와는 다릅니다.프리넷의 경우:
- 파일 공유 또는 프리사이트 갱신을 원하는 사용자는 파일을 "네트워크에 삽입"할 수 있습니다.
- "삽입"이 완료되면 파일이 네트워크에 저장되므로 게시 노드를 자유롭게 종료할 수 있습니다.원래 게시 노드가 온라인 상태인지 여부에 관계없이 다른 사용자가 계속 사용할 수 있습니다.콘텐츠를 담당하는 노드는 1개도 없습니다.대신 여러 노드로 복제됩니다.
이 설계의 두 가지 장점은 높은 신뢰성과 익명성입니다.정보는 퍼블리셔 노드가 오프라인이 되어도 이용 가능하며 파일 전체가 아닌 암호화된 블록으로 익명으로 많은 호스팅 노드에 분산되어 있습니다.
스토리지 방식의 주요 단점은 데이터 청크를 담당하는 노드가 없다는 것입니다.데이터가 일정 시간 동안 검색되지 않고 노드가 새 데이터를 계속 수신할 경우 할당된 디스크 공간이 완전히 사용될 때 오래된 데이터가 삭제됩니다.이와 같이 프리넷은 정기적으로 검색되지 않는 데이터를 '잊어버리는' 경향이 있습니다('효과' 참조).
사용자는 네트워크에 데이터를 삽입할 수 있지만 데이터를 삭제할 방법은 없습니다.프리넷의 익명성으로 인해 원본 게시 노드 또는 데이터 소유자는 알 수 없습니다.데이터를 삭제할 수 있는 유일한 방법은 사용자가 요청하지 않는 것입니다.
네트워크
일반적으로 네트워크상의 호스트 컴퓨터는 노드로서 동작하는 소프트웨어를 실행하고, 같은 소프트웨어를 실행하는 다른 호스트에 접속해, 피어 노드의 대규모 분산형 가변 사이즈의 네트워크를 형성합니다.일부 노드는 최종 사용자 노드입니다.이 노드에서 문서가 요청되어 인간 사용자에게 제공됩니다.다른 노드는 데이터 라우팅에만 사용됩니다.모든 노드가 서로 동일하게 통신합니다.전용 '클라이언트'나 '서버'는 없습니다.노드는 키와 관련된 데이터를 삽입하고 가져오는 용량을 제외하고 다른 노드의 등급을 매길 수 없습니다.이는 노드 관리자가 비율 시스템을 사용할 수 있는 대부분의 다른 P2P 네트워크와 달리 사용자가 다운로드하기 전에 일정량의 콘텐츠를 공유해야 합니다.
프리넷 프로토콜은 인터넷(Internet Protocol)과 같은 복잡한 토폴로지의 네트워크에서 사용하도록 설계되었습니다.각 노드는 직접 도달할 수 있는 다른 노드(개념상의 「네이버」)의 수 밖에 모릅니다만, 어느 노드도 다른 노드에 인접할 수 있습니다.계층이나 다른 구조는 의도하지 않습니다.각 메시지는 수신처에 도달할 때까지 네이버에서 네이버로 전달함으로써 네트워크를 통해 라우팅됩니다.각 노드가 네이버에 메시지를 전달할 때 네이버가 메시지를 다른 노드로 전송할 것인지, 메시지의 최종 수신인인지 원래 소스인지 알 수 없습니다.이는 사용자와 게시자의 익명성을 보호하기 위한 것입니다.
각 노드는 키와 관련된 문서를 포함하는 데이터 스토어와 노드를 다른 키를 검색했을 때의 성능 레코드와 관련짓는 라우팅 테이블을 유지한다.
프로토콜
프리넷 프로토콜은 분산 해시 테이블과 유사한 키 기반 라우팅 프로토콜을 사용합니다.버전 0.7에서는 라우팅 알고리즘이 대폭 변경되었습니다.버전 0.7보다 이전 버전에서는 각 노드가 고정된 위치가 없는 휴리스틱라우팅 알고리즘을 사용했습니다.라우팅은 취득되는 키에 가장 가까운 노드(버전 0.3) 또는 보다 빠른 노드(버전 0.5)에 근거하고 있었습니다.어느 경우든 요구가 성공했을 때 다운스트림노드(요구에 응답한 노드)에 새로운 접속이 추가되는 경우가 있어 오래된 노드는 최근에 사용한 순서(또는 그와 유사한 순서)로 폐기됩니다.Oskar Sandberg의 연구(버전 0.7 개발 중)는 이 "경로 폴딩"이 매우 중요하며 경로 폴딩이 있다면 매우 단순한 라우팅 알고리즘으로도 충분하다는 것을 보여줍니다.
이것의 단점은 공격자가 프리넷노드를 찾아내 접속하는 것이 매우 쉽다는 것입니다.이것은 모든 노드가 새로운 접속을 계속적으로 검출하려고 하기 때문입니다.버전 0.7에서는 프리넷은 "opennet"(이전 알고리즘과 비슷하지만 단순함)과 "darknet"(모든 노드 연결은 수동으로 설정되므로 친구만 노드의 IP 주소를 알 수 있습니다)을 모두 지원합니다.Darknet은 편리성은 떨어지지만 원격 공격자에 대해서는 훨씬 안전합니다.
이 변경에서는 라우팅 알고리즘에 큰 변경이 필요했습니다.모든 노드에는 0과 1 사이의 숫자인 로케이션이 있습니다.키가 요구되면 노드는 먼저 로컬 데이터스토어를 확인합니다.찾을 수 없는 경우 키의 해시는 같은 범위의 다른 번호로 변환되고 요청은 키에 가장 가까운 위치에 있는 노드로 라우팅됩니다.이 작업은 홉카운트가 어느 정도 초과되거나 검색할 노드가 더 이상 없거나 데이터가 발견될 때까지 계속됩니다.데이터가 발견되면 경로를 따라 각 노드에 캐시됩니다.따라서 키에 대한 소스 노드는 1개도 없으며 현재 저장된 위치를 검색하면 키가 보다 광범위하게 캐시됩니다.기본적으로 동일한 프로세스를 사용하여 네트워크에 문서를 삽입합니다.데이터는 홉이 다 될 때까지 키에 따라 라우팅되며 동일한 키를 가진 기존 문서가 발견되지 않으면 각 노드에 저장됩니다.오래된 데이터가 발견되면 오래된 데이터가 전파되어 원본으로 반환되고 삽입이 "충돌"합니다.
그러나 이것은 로케이션이 올바른 방법으로 클러스터 되어 있는 경우에만 유효합니다.프리넷은 다크넷(글로벌소셜네트워크의 서브셋)이 소규모 네트워크라고 가정하고 노드들은 인접 노드와의 거리를 최소화하기 위해 (Metropolis-Hastings 알고리즘을 사용하여) 항상 로케이션 교환을 시도합니다.네트워크가 실제로 소규모 네트워크인 경우 프리넷은 데이터를 상당히 빠르게 찾을 수 있습니다.이상적으로는 O([ g ( )]){\ O( \ [ \ left ( \ ) }Hops ( \ [ log \ ( n \ right ) ]^{ right } } } ) order order order order order order order order order order order order order order order order order order order order order order order order 。그러나 데이터가 검색된다는 보장은 [32]전혀 없습니다.
최종적으로 문서가 발견되거나 홉 제한을 초과합니다.터미널 노드는 보류 중인 요청의 중간 노드의 레코드에 의해 지정된 경로를 따라 발신자에게 회신하는 응답을 보냅니다.중간 노드는 도중에 문서를 캐시하도록 선택할 수 있습니다.이는 대역폭을 절약할 뿐만 아니라 하나의 "소스 노드"가 없기 때문에 문서를 검열하기가 더 어려워집니다.
영향
처음에 다크넷 내의 로케이션은 랜덤으로 분산됩니다.즉, 요청 라우팅은 기본적으로 랜덤입니다.opennet에서는 기존 네트워크가 이미 [33]최적화되어 있는 경우 최적화된 네트워크 구조를 제공하는 가입 요구에 의해 접속이 확립됩니다.따라서 새로 시작된 프리넷의 데이터는 다소 [34]랜덤하게 배포됩니다.
로케이션 스왑(다크넷 상)과 패스 폴딩(오픈넷 상)이 진행됨에 따라 서로 가까운 노드의 로케이션과 멀리 있는 노드의 로케이션이 점점 더 가까워집니다.유사한 키를 가진 데이터는 동일한 [33]노드에 저장됩니다.
그 결과, 네트워크는 분산된 클러스터 구조로 자기 조직화됩니다.여기서 노드는 키 공간에서 서로 가까운 데이터 항목을 보관하는 경향이 있습니다.이러한 클러스터는 네트워크 전체에 여러 개 존재하며, 사용된 문서에 따라 여러 번 복제될 수 있습니다.이는 일종의 "순간 대칭 파괴"로, 초기 대칭 상태(모든 노드가 동일하고 서로 랜덤한 초기 키가 있음)가 매우 비대칭적인 상황으로 이어지며,[citation needed] 노드가 밀접하게 관련된 데이터를 전문적으로 취급하게 됩니다.
클러스터링을 일으키는 경향이 있는 힘(공유 근접도 데이터가 네트워크 전체에 퍼짐)과 클러스터를 해체하는 경향이 있는 힘(일반적으로 사용되는 데이터의 로컬 캐싱)이 있습니다.이러한 힘은 데이터 사용 빈도에 따라 달라지기 때문에 거의 사용되지 않는 데이터는 해당 데이터 제공에 특화된 몇 개의 노드에만 배치되는 경향이 있으며 자주 사용되는 항목은 네트워크 전체에 널리 분산됩니다.이 자동 미러링은 웹 트래픽이 과부하되는 시간을 상쇄하며, 성숙한 네트워크의 인텔리전트 라우팅으로 인해 크기가 n인 네트워크는 평균적으로 [35]문서를 검색하는 데 로그(n) 시간만 필요합니다.
열쇠들.
열쇠는 해시입니다.키 친밀감을 말할 때 의미적 친밀감이라는 개념은 없습니다.따라서 키에 의미적 의미가 있는 경우처럼 키의 근접성과 데이터의 유사성 사이에는 상관관계가 없으므로 인기 있는 주제로 인한 병목현상이 발생하지 않습니다.
프리넷에서는 주로 콘텐츠 해시 키(CHK)와 서명된 서브스페이스 키(SSK)의 2종류의 키가 사용되고 있습니다.SSK의 하위 유형은 업데이트 가능 하위 공간 키(USK)입니다. USK는 콘텐츠를 안전하게 업데이트할 수 있도록 버전 관리를 추가합니다.
CHK는 문서의 SHA-256 해시이므로(암호화 후, 그 자체는 일반 텍스트의 해시에 의존합니다), 노드는 반환된 문서가 해시되고 키에 대한 다이제스트를 체크함으로써 해당 문서가 올바른지 확인할 수 있습니다.이 키에는 프리넷에 있는 데이터의 내용이 포함되어 있습니다.재구성 및 암호 해독을 위해 클라이언트에 전달되는 컨텐츠를 위한 모든 이진 데이터 구성 요소를 전송합니다.CHK는 본질적으로 독특하고 변조 방지 콘텐츠를 제공합니다.CHK에서 데이터를 변경하는 적대 노드는 다음 노드 또는 클라이언트에 의해 즉시 검출됩니다.또한 CHK는 동일한 데이터가 동일한 CHK를 가지며 여러 사이트가 동일한 대용량 파일을 참조할 경우 동일한 CHK를 [36]참조할 수 있기 때문에 데이터의 용장성을 줄입니다.
SSK는 공개키 암호화에 기초하고 있습니다.현재 프리넷은 DSA 알고리즘을 사용하고 있습니다.SSK 아래에 삽입된 문서는 삽입자에 의해 서명되며, 이 서명은 모든 노드에서 검증되어 데이터가 변조되지 않도록 할 수 있습니다.SSK 를 사용하면, 프리넷상에서 검증 가능한 익명의 ID 를 확립해, 1명의 유저가 복수의 문서를 안전하게 삽입할 수 있습니다.같은 이름의 두 번째 파일을 삽입하면 충돌이 발생할 수 있으므로 SSK에 삽입된 파일은 사실상 불변합니다.USK 는, Web 인터페이스에 [37]북마크로 등록된 키의 갱신 통지를 제공하기 위해서도 사용되는 키에 버전 번호를 추가하는 것으로, 이 문제를 해결합니다.SSK의 다른 서브타입은 Keyword Signed Key(KSK; 키워드 서명 키)입니다.KSK에서는 키쌍은 사람이 읽을 수 있는 단순한 문자열에서 표준적인 방법으로 생성됩니다.KSK를 사용하여 문서를 삽입하면 요청자가 사람이 읽을 수 있는 문자열을 알고 있는 경우에만 문서를 검색 및 복호화할 수 있습니다.이것에 의해,[38] 유저가 참조할 수 있는 편리성이 향상됩니다(그러나 시큐러티가 저하됩니다).
확장성
네트워크는 매우 큰 네트워크라도 성능이 저하되지 않으면 확장성이 있다고 합니다.프리넷의 scalability가 평가되고 있지만, 유사한 아키텍처는 로그 단위로 [39]확장되는 것으로 나타났습니다.이 작업은 일반적인 콘텐츠의 확장성을 향상시킬 수 있는 캐시를 무시하면 Freenet이 소규모 네트워크(오픈넷 및 다크넷 네트워크 모두 포함)에서 O †의 홉(\ O에 있는 를 찾을 수 있음을 나타냅니다.단, 이 scalability는 매우 큰 네트워크 없이는 테스트하기 어렵습니다.게다가 프리넷 고유의 시큐러티 기능에 의해서, 상세한 퍼포먼스 분석(네트워크의 사이즈를 확인하는 것 등)을 정확하게 실시하기 어렵습니다.현시점에서는, 프리넷의 scalability는 아직 테스트되지 않았습니다.
다크넷 대 오픈넷
버전 0.7에서 프리넷은 "darknet"과 "opennet" 연결을 모두 지원합니다.오픈넷 접속은 오픈넷이 네이블로 되어 있는 노드에 의해 자동적으로 확립됩니다.다크넷 접속은 서로를 알고 신뢰하는 사용자 간에 수동으로 확립됩니다.프리넷 개발자는 필요한 신뢰성에 대해 "프리넷 노드에 금이 가지 않는다"[40]고 설명합니다.오픈넷 접속은 사용하기 쉽지만 다크넷 접속은 네트워크상의 공격자로부터 보다 안전하며 공격자(압박정부 등)가 사용자가 [41]프리넷을 실행하고 있는지 판단하기조차 어려울 수 있습니다.
Freenet 0.7의 핵심 혁신은 (적어도 이론상으로는) 수백만 명의 사용자를 지원할 수 있는 글로벌 확장 가능한 다크넷을 가능하게 하는 것입니다.WASTE와 같은 이전의 다크넷은 비교적 소규모의 절단 네트워크로 제한되었습니다.프리넷의 scalability는 인간관계가 작은 세계 네트워크를 형성하는 경향이 있기 때문에 가능해지고 있습니다.이는 두 사람 사이의 짧은 길을 찾기 위해 이용될 수 있는 특성입니다.이 연구는 Ian Clarke와 스웨덴 수학자 Oskar Sandberg가 DEF CON 13에서 행한 연설을 바탕으로 한다.게다가 라우팅 알고리즘은 오픈넷 접속과 다크넷 접속을 혼합한 라우팅이 가능하기 때문에 네트워크를 사용하는 친구가 적은 사용자는 충분한 접속을 통해 퍼포먼스를 얻을 수 있습니다.다크넷 접속의 보안상의 이점도 있습니다.이는 또한 일부 사용자가 오픈넷 접속을 가지고 있는 소규모 다크넷이 프리넷 네트워크 전체에 완전히 통합되어 오픈넷, 다크넷 또는 그 둘의 하이브리드 중 하나의 [33]노드만으로 연결된 다크넷 포켓을 제외하고 모든 사용자가 모든 콘텐츠에 액세스할 수 있음을 의미합니다.
도구 및 응용 프로그램
다른 많은 P2P 애플리케이션과 달리 프리넷은 포괄적인 기능 자체를 제공하지 않습니다.프리넷은 모듈러형이며, 다른 프로그램이 메시지 보드, 파일 공유 또는 [42]온라인 채팅 등의 서비스를 구현하기 위해 사용할 수 있도록 프리넷 클라이언트 프로토콜(FCP)이라는 API를 갖추고 있습니다.
의사소통
프리넷 메시징 시스템(FMS)
- FMS는 서비스 거부 공격이나 스팸 등의 프로스트 문제에 대처하기 위해 설계되었습니다.사용자는 신뢰 목록을 게시하고 각 사용자는 신뢰하는 ID와 신뢰하는 ID에서만 메시지를 다운로드합니다.FMS는 익명으로 개발되어 프리넷 내의 FMS 프리사이트에서 다운로드 할 수 있습니다.일반 인터넷에는 공식 사이트가 없습니다.랜덤 투고 지연, 다수의 아이덴티티 지원, 사용자의 투고를 신뢰하는 것과 신뢰 리스트를 신뢰하는 것의 구별이 특징입니다.C++로 기술되어 있어 Freenet Client Protocol(FCP)을 사용하여 Freenet과 인터페이스하는 Freenet과는 다른 어플리케이션입니다.
서리
- Frost에는 편리한 파일 공유가 지원되지만 기본적으로 스팸 및 서비스 거부 [43]공격에 취약합니다.프로스트는 SourceForge의 프로스트 홈페이지 또는 프리넷 내의 프로스트 프리사이트에서 다운로드할 수 있습니다.그것은 프리넷 개발자들에 의해 승인되지 않았다.프로스트는 자바어로 쓰여져 있으며 프리넷과는 다른 어플리케이션입니다.
소네
- Sone은 페이스북에서 영감을[44] 얻어 익명의 공개 토론과 이미지 갤러리를 통해 보다 심플한 인터페이스를 제공한다.다른 프로그램의[45] 제어를 위한 API를 제공하며, 일반 인터넷에서 정적 [46][47]웹 사이트를 위한 댓글 시스템을 구현하기 위해서도 사용됩니다.
유틸리티
j사이트
- jSite는 웹 사이트를 업로드하는 도구입니다.키를 처리하고 파일 업로드를 관리합니다.
인포칼립스
- Infocalypse는 분산 리비전 제어 시스템 Mercurial의 확장입니다.최적화된 구조를 사용하여 새 데이터 검색 요청 수를 최소화하고, 소유자의 개인 [48]키를 필요로 하지 않고 대부분의 데이터를 안전하게 재업로드하여 저장소를 지원할 수 있습니다.
라이브러리
FCPLib
- FCPLib(Freenet Client Protocol Library)는 프리넷과의 사이에서 정보를 저장 및 취득하기 위해 기본적으로 컴파일된 C++ 기반 함수 세트를 지향합니다.FCPLib는 Windows NT/2K/XP, Debian, BSD, Solaris 및 macOS를 지원합니다.
lib-pyFreenet
- lib-pyFreenet은 Python 프로그램에 프리넷 기능을 제공합니다.'인포칼립스'가 사용하죠
취약성
법 집행 기관들은 사용자들의 익명을 밝히기[49] 위해 프리넷 오픈넷에 성공적으로 침투했다고 주장했지만, 이러한 혐의를 뒷받침할 기술적인 세부 사항은 알려지지 않았다.한 보고서는 다음과 같이 말했다. "아이를 임신한 조사는 ...에 초점을 맞췄다.당국이 온라인 네트워크를 감시하고 있을 때 (용의자) 프리넷."[50]다른 보고는 체포가 블랙에 근거했을 수도 있다고 시사했다.잘못된[51] 계산을 사용하고 잘못 계산된 잘못된 긍정 비율과 잘못된 [52]모델을 사용하기 위해 제외되는 ICE 프로젝트 누출입니다.
캐나다 온타리오주의 필 지역(Peel Region of Ontario, R. v. Owen, 2017 ONCJ 729 (CanLII))의 법원 사건은 프리넷 [53]네트워크에서 불법 자료를 다운로드한 필 지역 경찰이 소재한 이후 법 집행이 실제로 존재함을 보여주었다.법원의 결정은 캐나다 사법기관이 불법 자료를 요구하는 사람을 판별하기 위해 수정된 프리넷 소프트웨어를 실행하는 노드를 운영하고 있음을 보여준다.
- 라우팅 테이블 삽입(RTI) 공격[54]
주의성
프리넷은 뉴욕 타임즈 기사와 CNN, 60분 II, BBC, [55]가디언 등 주요 언론에서 상당한 홍보를 해왔다.
프리넷은 "전체 보안 감시로부터의 보호"[24][25][26]로 SUMA-Award 2014를 받았습니다.
프리사이트
「프리즈 사이트」는, 프리넷 네트워크상에서 호스트 되고 있는 사이트입니다.정적 내용만 포함하므로 서버 측 스크립트나 데이터베이스와 같은 활성 내용은 포함할 수 없습니다.프리사이트는 HTML로 코딩되어 페이지를 표시하는 브라우저가 허용하는 한 많은 기능을 지원합니다.단, 프리넷 소프트웨어에서 페이지를 보는 사람의 ID를 표시하기 위해 사용할 수 있는 코드의 일부를 삭제하는 예외도 있습니다(예를 들어 인터넷상의 페이지에 액세스 하는 경우 등).
「 」를 참조해 주세요.
동등한 소프트웨어
- GNUnet
- I2P
- Java Anon 프록시(JonDonym이라고도 함)
- 오시리스
- Perfect Dark – 또한 익명 노드에 의해 공유되는 분산형 데이터 스토어를 만듭니다.Share의 후계자는 Winny의 후계자입니다.
- Tahoe-LAFS
- 제로넷
레퍼런스
- ^ "People". Freenet: The Free Network official website. 22 September 2008. Archived from the original on 21 September 2013. Retrieved 31 May 2014.
- ^ "Releases · freenet/fred". github.com. Retrieved 3 July 2022.
- ^ 2018년 2월 7일 Wayback Machine, GitHub에서 어카이브된 프리넷의 언어별 버전: 프리넷
- ^ 프리넷이란?2011년 9월 16일 프리넷의 Wayback Machine에서 아카이브 완료: 무료 네트워크 공식 웹 사이트입니다.
- ^ a b Taylor, Ian J. P2P에서 웹 서비스 및 그리드: 클라이언트/서버 세계의 피어.런던: Springer, 2005.
- ^ Cohen, Adam (26 June 2000). "The Infoanarchist". Time. Archived from the original on 8 July 2008. Retrieved 18 December 2011.
- ^ Beckett, Andy (26 November 2009). "The dark side of the internet". The Guardian. Archived from the original on 8 September 2013. Retrieved 26 November 2009.
{{cite news}}
: CS1 maint: bot: 원래 URL 상태를 알 수 없습니다(링크). 가디언은 프리넷에 대해 쓰고 있다(Ian Clarke의 답변) WebCite에서 아카이브 완료 - ^ "Sone: Pseudonymes Microblogging über Freenet". Archived from the original on 5 October 2015. Retrieved 15 September 2015., 독일어 기사, 2010
- ^ "Infoclypse". Wiki. Mercurial. Archived from the original on 3 November 2021. Retrieved 2 December 2021.
- ^ "Flog Helper: Easy Blogging over Freenet". GitHub. 7 February 2019. Archived from the original on 5 February 2022. Retrieved 16 December 2011.
- ^ "Web of Trust". 7 February 2019. Archived from the original on 8 December 2015. Retrieved 15 September 2015.
- ^ "Freenet over Sneakernet. Freenet Key: USK@MYLAnId-ZEyXhDGGbYOa1gOtkZZrFNTXjFl1dibLj9E,Xpu27DoAKKc8b0718E-ZteFrGqCYROe7XBBJI57pB4M,AQACAAE/Shoeshop/2/".
{{cite web}}
:누락 또는 비어 있음url=
(도움말) - ^ Markoff, John (10 May 2000). "Cyberspace Programmers Confront Copyright Laws". The New York Times. Archived from the original on 17 February 2017. Retrieved 19 February 2017.
- ^ "Coders prepare son of Napster". BBC News. 12 March 2001. Archived from the original on 4 January 2014. Retrieved 1 June 2014.
- ^ "Fighting for free speech on the Net". CNN. 19 December 2005. Archived from the original on 2 June 2014. Retrieved 1 June 2014.
- ^ 이안 클라크.분산 분산형 정보 저장 및 검색 시스템 2012년 3월 16일 Wayback Machine에서 보관.1999년 에든버러 대학 정보학부 미발표 보고서.
- ^ a b 이안 클라크, 오스카 샌드버그, 브랜든 와일리, 시어도어 W.Hong.Freenet: 2015년 4월 4일 Wayback Machine에 아카이브된 분산 익명 정보 저장 및 검색 시스템.인: 프라이버시 강화 테크놀로지 설계에 관한 국제 워크숍의 진행 상황:익명성 및 관찰 불가능한 설계상의 문제뉴욕, 뉴욕: Springer-Verlag, 2001, 페이지 46-66.
- ^ Clarke, Ian; Sandberg, Oskar; Wiley, Brandon; Hong, Theodore W. (24 March 2019). "Freenet: A Distributed Anonymous Information Storage and Retrieval System". Springer-Verlag New York, Inc.: 46–66. CiteSeerX 10.1.1.10.4919.
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - ^ 싱, 무닌다르 P.「인터넷 컴퓨팅의 실천 핸드북」.Boca Raton, 플로리다 주:채프먼 & 홀, 2005년
- ^ Ihlenfeld, Jens (4 April 2006). "Freenet 0.7 soll globales Darknet schaffen". Golem. Archived from the original on 5 October 2015. Retrieved 17 September 2015.
- ^ 2015년 9월 17일 마지막으로 액세스한 Wayback Machine에서 2014년 11월 29일 보관된 Freenet 0.7.5에 대한 릴리스 정보
- ^ Freenet 빌드 1226에 대한 릴리스 정보 2014년 11월 29일 Wayback Machine에서 보관, 2015년 9월 17일 마지막으로 액세스
- ^ 2014년 11월 29일 Wayback Machine 2015에서 아카이브된 Freenet 1468 릴리즈 노트
- ^ a b 2015년 2월 11일, 2015년 3월 20일 Wayback Machine에서 SUMA Award 아카이브 완료.
- ^ a b 2015년 4월 14일 발행된 2015년 9월 5일 웨이백 머신에서 SUMA Award Ceremony 녹음.
- ^ a b SUMA Award für das Freenet Projekt 2015년 9월 24일 Heise의 Wayback Machine Jo Bager 온라인 아카이브
- ^ "The Philosophy behind Freenet". Archived from the original on 30 April 2011. Retrieved 20 December 2010.
- ^ 담, 젠스, 그리고 시몬 토마스.중국의 사이버 속도는 기술적 변화와 정치적 효과를 나타낸다.런던: Routledge, 2006.
- ^ Terry, Kyle. The dark side of the web -- exploring darknets. Salem, Baden-Württemberg: TEDx Talks. Archived from the original on 11 December 2021.
- ^ Toseland, Matthew. "Does Freenet qualify for DMCA Safe Harbor?". Archived from the original on 3 March 2016. Retrieved 27 January 2013.
- ^ "IAAL*: What Peer-to-Peer Developers Need to Know about Copyright Law". 10 January 2006. Archived from the original on 30 November 2015. Retrieved 15 September 2015.
- ^ Clarke, Ian (2010). Private Communication Through a Network of Trusted Connections: The Dark Freenet (PDF). Archived (PDF) from the original on 1 December 2017. Retrieved 15 September 2015.
- ^ a b c Roos, Stefanie (2014). Measuring Freenet in the Wild: Censorship-Resilience under Observation (PDF). Springer International Publishing. pp. 263–282. ISBN 978-3-319-08505-0. Archived (PDF) from the original on 16 November 2014. Retrieved 15 September 2015.
- ^ "Freenet Project Documentation". freenetproject.org. Retrieved 20 April 2022.
- ^ "FreeNet". networxsecurity.org. Archived from the original on 26 January 2019. Retrieved 25 January 2019.
- ^ "freesitemgr, code for inserting files as CHK, fixed revision". GitHub. Archived from the original on 5 February 2022. Retrieved 29 November 2017.
- ^ Babenhauserheide, Arne. "USK and Date-Hints: Finding the newest version of a site in Freenet's immutable datastore". draketo.de. Archived from the original on 8 February 2015. Retrieved 29 November 2017.
- ^ Babenhauserheide, Arne. "Effortless password protected sharing of files via Freenet". draketo.de. Archived from the original on 10 September 2015. Retrieved 29 November 2017.
- ^ Kleinberg, Jon (2000). "The Small-World Phenomenon: An Algorithmic Perspective" (PDF). Proceedings of the thirty-second annual ACM symposium on Theory of computing. pp. 163–70. doi:10.1145/335305.335325. ISBN 978-1-58113-184-0. S2CID 221559836. Archived (PDF) from the original on 12 November 2013. Retrieved 22 August 2013.
- ^ "Required trust for forming a darknet connection". random_babcom. 29 November 2017. Retrieved 29 November 2017.
- ^ "Darknet-Fähigkeiten sollen Softwarenutzung verbergen". Golem. 9 May 2008. Archived from the original on 5 October 2015. Retrieved 29 November 2017.
- ^ Freenet 소셜 네트워킹 가이드 2015년 8월 15일 Wayback Machine Justus Ranvier, 2013년
- ^ 프로스트 단점 수정에 대한 개발자 토론 2017년 12월 1일 Wayback Machine Matthew Toseland, 2007년
- ^ 2015년 9월 15일 Wayback Machine에서 개발자 Archived 2017년 12월 1일, "Freenet 위에 Facebook 클론"에 대한 설명
- ^ Freenet Wiki의 Sone은 2015년 8월 12일 Wayback Machine에서 FCP API 설명과 함께 2015년 9월 14일을 취득했습니다.
- ^ babcom description Archived 2015년 5월 11일 Wayback Machine에서 "올바른 URL로 iframe을 생성하여 로컬 Sone 인스턴스에 검색 요청을 제출합니다.", 2014.
- ^ "Sone". Archived from the original on 2 October 2015. Retrieved 15 September 2015.
- ^ "Information about infocalypse. A mirror of the included documentation". Archived from the original on 27 January 2012. Retrieved 16 December 2011.
- ^ Dickinson, Forum Communications Company 1815 1st Street West; at225-8111, North Dakota 58602 Call us. "news". The Dickinson Press. Archived from the original on 24 March 2019. Retrieved 24 March 2019.
- ^ "Man jailed indefinitely for refusing to decrypt hard drives loses appeal". Ars Technica. 20 March 2017. Archived from the original on 21 March 2017. Retrieved 21 March 2017.
- ^ "Police department's tracking efforts based on false statistics". freenetproject.org. Archived from the original on 5 February 2022. Retrieved 23 September 2017.
- ^ "Errors in the Levine 2017 paper on attacks against Freenet". draketo.de. Archived from the original on 14 April 2021. Retrieved 3 January 2021.
- ^ "CanLII - 2017 ONCJ 729 (CanLII)". Archived from the original on 17 January 2021. Retrieved 13 November 2017.
- ^ "A Routing Table Insertion (RTI) Attack on Freenet". Archived from the original on 5 February 2022. Retrieved 12 February 2021.
- ^ 인터넷의 어두운 면 2013년 9월 8일 The Guardian 2009의 Wayback Machine Andy Beckett에서 아카이브됨
추가 정보
- Clarke, I.; Miller, S.G.; Hong, T.W.; Sandberg, O.; Wiley, B. (2002). "Protecting free expression online with Freenet" (PDF). IEEE Internet Computing. 6 (1): 40–9. CiteSeerX 10.1.1.21.9143. doi:10.1109/4236.978368.
- Von Krogh, Georg; Spaeth, Sebastian; Lakhani, Karim R (2003). "Community, joining, and specialization in open source software innovation: A case study" (PDF). Research Policy. 32 (7): 1217–41. doi:10.1016/S0048-7333(03)00050-7.
- Dingledine, Roger; Freedman, Michael J.; Molnar, David (2001). "The Free Haven Project: Distributed Anonymous Storage Service". Designing Privacy Enhancing Technologies. Lecture Notes in Computer Science. pp. 67–95. CiteSeerX 10.1.1.420.478. doi:10.1007/3-540-44702-4_5. ISBN 978-3-540-41724-8.
- Clarke, Ian; Sandberg, Oskar; Wiley, Brandon; Hong, Theodore W. (2001). "Freenet: A Distributed Anonymous Information Storage and Retrieval System". Designing Privacy Enhancing Technologies. Lecture Notes in Computer Science. pp. 46–66. CiteSeerX 10.1.1.26.4923. doi:10.1007/3-540-44702-4_4. ISBN 978-3-540-41724-8.
- Riehl, Damien A. (2000). "Peer-to-Peer Distribution Systems: Will Napster, Gnutella, and Freenet Create a Copyright Nirvana or Gehenna?". The William Mitchell Law Review. 27 (3): 1761.
- Roemer, Ryan (Fall 2002). "The Digital Evolution: Freenet and the Future of Copyright on the Internet". UCLA Journal of Law and Technology. 5.
- Sun, Xiaoqing; Liu, Baoxu; Feng, Dengguo (2005). "Analysis of Next Generation Routing of Freenet". Computer Engineering (17): 126–8.
- Hui Zhang; Goel, Ashish; Govindan, Ramesh (2002). "Using the small-world model to improve Freenet performance". INFOCOM 2002: Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies. Vol. 3. pp. 1228–37. CiteSeerX 10.1.1.74.7011. doi:10.1109/INFCOM.2002.1019373. ISBN 978-0-7803-7476-8. S2CID 13182323.