"Avocado조"의 두 판 사이의 차이

cdc wiki
이동: 둘러보기, 검색
(시스템 구성도)
(시스템 구현 순서)
246번째 줄: 246번째 줄:
  
 
===시스템 구현 순서===
 
===시스템 구현 순서===
 +
 +
◇ 먼저 AWS기반의 서버를 구축한 뒤 Filezilla를 통해 Routing을 수행할 파일을 업로드한다.
 +
◇ Routing이 성공하면 EJS와 LESS를 이용한 간단한 View를 만든다.
 +
◇ IPFS Agent의 Django와 연계하여 간단한 api들을 설계한다.
 +
◇ 이 때 암호화 기법인 Nucypher과 Pyumbral을 적용하여 데이터를 보호한다.
 +
◇ 연동이 완료되면 Frontend와 IPFS를 연계하여 음원들을 업로드한다.
 +
◇ IPFS업로드에 성공하면 IPFS Agent에 음원 Hash 값을 올린다.
 +
◇ Blockchain에 업로드가 성공할 시 Voting값을 넘겨주고 받는 것을 구현한다.
 +
◇ 세부적인 기능들을 구현한 뒤 view를 다듬는다.
  
 
===상세설계 내용===
 
===상세설계 내용===

2018년 12월 7일 (금) 02:26 판

프로젝트 개요

기술개발 과제

국문 : IPFS와 블록체인을 활용한 음원 스트리밍 서비스

영문 : Music Streaming Service Using IPFS & Blockchain

과제 팀명

Avocado

지도교수

김성환 교수님

개발기간

2018년 9월 ~ 2018년 12월 (총 4개월)

구성원 소개

서울시립대학교 컴퓨터공학부·과 2013920005 권정윤 (PL)

서울시립대학교 컴퓨터공학부·과 2013920045 이광재

서울시립대학교 컴퓨터공학부·과 2013920049 이재혁

서울시립대학교 컴퓨터공학부·과 2013920065 최윤혁

서론

개발 과제의 개요

개발 과제 요약

◇ IPFS와 블록체인을 이용한 음원 스트리밍 서비스를 개발하였다.
◇ 음원 파일들의 저장과 스트리밍은 분산 형 시스템인 IPFS에서 처리한다.
◇ 보팅과 음원 업로드에 따른 보상, 그리고 사재기와 어뷰징 방지를 위해 블록체인을 이용한다.
◇ 암호화 기법으로 Nucypher와 PyUmbral을 적용한다.

개발 과제의 배경

❑ 개발 과제의 배경

◇ 음악 산업의 특성

 음악 산업은 유/무형 음원 매체의 판매사업, 콘서트 등의 공연사업, 아티스트 매니지먼트사업, 저작권 관리 등의 퍼블리싱 사업, OSMU에 따른 확산 등 아티스트와 그 음악을 기반으로 가치를 창출하는 사업을 총칭합니다. 국내 음악 산업은 작곡가, 가수, 연주자 등 음악 콘텐츠의 원천 생산을 담당하는 창작자와 아티스트의 발굴/육성 및 콘텐츠 제작을 담당하는 제작사, 제작사의 콘텐츠에 투자하고 다양한 온/오프라인 플랫폼으로의 유통을 담당하는 유통사, 소비자들에게 콘텐츠를 직접 판매하는 음반 도/소매업체 및 디지털 음악서비스 사업자로 구성되어 있습니다.
 과거에는 음반이 국내 음악 산업 매출의 대부분을 차지하였지만, 2000년대 초반부터 음악을 감상하는 방식이 다운로드나 스트리밍과 같은 디지털 음원 중심으로 변화했습니다. 음악 콘텐츠의 유통도 빠르게 디지털화되면서 음반의 도/소매 유통사업이 축소되고, 디지털 음원을 유통할 수 있는 새로운 유통 채널과 단말 사업자들이 중요한 시장 참여자로 대두되었습니다. 또한 작곡/연주 등 창작 활동을 돕는 소프트웨어의 발전으로 음악 생산 분야의 디지털화도 촉진되었습니다. 이러한 음악 산업 전반의 디지털 기술 발전으로 아티스트 개인이나 소규모 사업자들이 독립적으로 음악 콘텐츠를 제작하고 상업적으로 유통할 수 있게 되는 등 음악 산업의 진입 장벽이 완화되고 콘텐츠 제작의 주체도 다양해졌습니다.

◇ 디지털 중심 비즈니스 모델 스트리밍

스트리밍 서비스는 크게 다섯 가지로 분류할 수 있습니다.
1. Subscription: 월 정액 구독 모델
2. Ad-supported Model: 광고 기반 무료모델
3. Video Streams: 영상 스트리밍 모델
4. Paid Subscription & Freemium: 월 정액 구독 및 부분 유료화 모델
5. Ad-supported Streams: 광고 스트리밍 모델

◇ 음악 산업의 최근 경향

최근 음악 산업은 스트리밍 시장 중심의 재편이 이루어졌습니다. 스트리밍 서비스의 보편화로 불법 다운로드 시장이 감소하고 음악 산업의 수익성이 개선되었으나 라이선스 비용의 상승, 이용자당 수익 하락의 문제가 발생했습니다. 이에 최근 음악 산업계는 중소 헬스장, 카페 등 중소 자영업자를 대상으로 음원 공급 서비스를 넘어 음악 IP를 활용한 서비스를 제공합니다. 동시에 커뮤니티나 소셜 미디어에서 노래를 공유할 수 있는 기능을 통해 이용자 기반을 확대하고 있습니다. 이는 음악을 듣는 것을 넘어서 이용자가 직접 경험하고 스스로 콘텐츠를 생산하는 방식으로 이용자의 관여도를 이끌어내 음악IP의 활용도를 높인 결과입니다.

◇ 블록 체인 기술에 주목

블록체인은 분산형 데이터베이스와 유사한 형태로 데이터를 저장하는 연결 구조체입니다. 모든 구성원이 네트워크를 통해 데이터를 검증하고 저장해야하기 때문에 특정인의 임의적인 조작이 어렵다는 평가를 받고 있습니다. 이에 상대적으로 높은 보안성을 유지할 수 있고, 모든 참여자들이 정보를 공유하면서 거래 기록도 개방합니다. 해킹 등 정보 유출의 표적이 되는 중앙 서버가 존재하지 않아 제 3자의 공증이 필요하지 않습니다. 이에 수수료를 절감할 수 있고, 인프라 비용을 절감할 수 있습니다. 이에 콘텐츠 거래와 저작권 등록 및 관리 차원에서 높은 활용도를 보일 것입니다. 콘텐츠 산업에 블록체인 기술이 일반화될 때 유통과 저작권 차원에서 기존 비즈니스 모델의 근간을 흔들 수 있을 만큼의 파급력을 지닌 것으로 한국콘텐츠진흥원은 평가하고 있습니다.

◇ 최근 국내 음악 관련 시장 규모가 점점 증가하고 있고, 유료로 음악을 소비하는 사용자 역시 증가하고 있습니다. 또한, 음원 다운로드 보다는 스트리밍 형태로 디지털 음원을 이용하는 사람이 많기 때문에, 음원 스트리밍 시장에 블록체인을 도입하는 것은 경쟁력이 있다고 생각했습니다.



◇ 음원 시장의 과도한 중앙화로 인한 문제 발생 : 불공정한 수익 배분과 차트 조작 - 현재 온라인 음원 시장은 음원 서비스 제공업체 중심으로 구성되어 있습니다. 음원 시장의 중앙화 때문에 몇 가지 문제점이 발생하고 있습니다. 특히, 불공정한 수익 배분과 차트 조작은 반드시 해결해야하는 문제점입니다. 먼저, 수익 배분 문제가 나타나고 있습니다. 현재는 아래의 자료와 같이 유통사와 음원 서비스 제공업체가 대부분의 수익을 가져가고 있습니다. 제작보다 유통에 더 많은 수익이 돌아가는 구조에서는 서비스 제공 업체와 제작사의 답합이 일어날 수 있으며, 음원 제작자가 많은 수익을 받지 못하기 때문에 음원의 퀄리티가 낮아질 수 있습니다.

캡처4.PNG



◇ 음원 시장의 중앙화 때문에 나타나는 다른 문제점은 음원 순위를 조작해서 마케팅에 악용하는 사례가 많이 일어나고 있다는 점입니다. 음원 스트리밍 기록이나 다운로드 기록을 모두가 볼 수 없다는 점, 그렇기 때문에 일반 사용자가 차트를 조작했다는 점을 알기 어렵다는 점에서, 음원 서비스가 마케팅을 위한 음원 차트 조작에 악용되고 있습니다.


◇ 이러한 상황으로 보아, 음원 서비스 중앙화는 음원 서비스 제공자에게만 이득이고, 나머지의 사용자들에게는 손해라고 생각했습니다.
◇ 따라서, 저희 조는 블록체인으로 기존 온라인 음원 시장의 문제점을 해결해 보고자 합니다.

❑ 개발 과제의 효과

◇ 블록체인 시스템이 수익의 투명성을 보장해줄 수 있습니다.  
◇ 낮은 수수료. 기존 홈페이지(Melon)등에서는 수수료를 40% 이상 지불해야 하는 상황인데, 이러한 상황을 개선할 수 있을 것입니다.
◇ 보상 시스템. 기존에는 음원 제작자가 수익을 나눠 가지는 형태였다면, ‘좋아요’ 수에 따른 보상을 받을 수 있습니다.
◇ 블록체인 시스템이 서비스의 투명성을 보장해줄 수 있습니다.  
◇ 블록체인 기반의 음원 서비스이기 때문에 누구나 음원 스트리밍 내역 및 좋아요를 누른 기록을 볼 수 있다. 따라서, 차트 조작을 할 수 없기 때문에 음원 이용자에게 투명성을 보장할 수 있습니다.
◇ P2P 시스템. 크리에이터(전문가)에게 직접 연락하여 여러 조언을 구할 수 있음

개발 과제의 목표 및 내용

◇ 분산 형 시스템인 IPFS와 블록체인을 이용하여 중앙 집중 방식에서 벗어난 플랫폼을 구축한다.
◇ IPFS가 스트리밍을 담당함으로써 기존의 높은 스트리밍 비용을 획기적으로 절감할 수 있다.
◇ 기존 서비스의 높은 수수료와 적은 보상에 대비하여 블록체인을 이용하여 적절한 보상을 한다.
◇ 기존 서비스의 음원 사재기나 어뷰징을 블록체인의 투명성을 이용하여 해결한다.

관련 기술의 현황

관련 기술의 현황 및 분석(State of art)

◇ Melon: 사용자의 기분에 맞춰 음악을 골라준다(Big data + Recommendation system with AI)
   - 멜론은 음악추천 AI 챗봇인‘로니’를 2018년 4월 12일에 출시하였다. 카카오톡 플러스친구 ‘카카오멜론’을 찾아 1:1 채팅을 누르면 만날 수 있다. ‘로니’는 이용자와 채팅으로 기분과 상황에 딱 맞는 곡을 실시간으로 추천한다.
◇ Spotify: 매주 30개씩 사용자에게 맞춤형 음악을 추천한다(Discover Weekly)
   - 2014년 Spotify는 머신러닝을 이용해 음악을 분석하는 기술 기업인 Echo Nest를 인수했다. 이후 Echo Nest는 현재 Spotify Music Intelligence부문을 담당하며 새로운 기능의 중추를 담당하고 있다. Echo Nest의 기술은 Spotify의 여러 부분에 녹아 들어갔지만, 최근 내놓은 Discover Weekly는 가장 큰 결과물이다.
◇ Sound Cloud: SNS형 음원 사이트
   - 스웨덴 스톡홀롬에서 구상해서 독일 베를린을 본사에 두고 있는 전 세계 음악 스트리밍 서비스. 대한민국의 멜론같은 서비스와는 거리가 멀다. 이쪽은 SNS에 가까운 편. 공식 앱은 안드로이드와 iOS에만 있고, 윈도우에는 비공식 앱 밖에 없다. 대표적인 비공식 앱으로는 Clouder!와 Player for SoundCloud가 있다. 원래 공식 앱에서 오프라인으로 노래 듣기, 댓글 기능이 있었으나 버전 업데이트 이후로 삭제되었다.
◇ D-tube: 블록체인 기반의 스트리밍 서비스
   - Blockchain과 P2P 기술을 활용한 분산형 영상 스트리밍 사이트이다. Youtube와 달리 영상을 올리기 전 계좌를 개설하거나 수수료를 낼 필요가 없다. 또한 사용자들의 추천을 받으면 그 자체가 수익이 되는 시스템이다.


  • 전 세계적인 기술현황

◇ Blockchain 이란?

   - 현대 사회에서 화폐란 일종의 ‘신뢰’라 할 수 있다. 그렇다면 지금까지 넷 상에서 ‘신뢰’를 담당한 것은 무엇일까? 대표적으로 공인인증서를 들 수 있다. 은행기관이 개인의 신용을 인증하고 발급해 준 덕분에 우리는 넷 상에서 거래 등 물질적 업무를 할 수 있었다. 
   - 현재 중앙기관(은행)을 대체할 강력한 ‘신뢰도’를 가진 시스템이 등장했는데 이것이 블록체인이다. 은행과 블록체인의 공통점과 차이점은 다음과 같다. 둘 다 거래 내역을 장부에 저장한다. 단, 은행은 단일 실패 지점으로써 서버가 다운되거나 하는 문제가 발생하면 고객은 거래 불능 상태에 빠진다. 이에 반해 블록체인은 그러한 문제가 전혀 없다.

아래 표를 통해 블록체인을 자세히 알아보도록 한다.


캡처5.PNG


  • 특허조사 및 특허 전략 분석

캡처.PNG 캡처2.PNG 캡처3.PNG


  • 기술 로드맵

◇ Blockchain Based Upload System - Nucypher

개발 배경

- 암호화된 데이터(음원)을 저장하고 다루기 위한 기술
- Centralized KMS와 달리 de-centralized KMS는 신뢰 있는 중앙 기관이 필요하지 않음
- 기존의 KMS는 신뢰를 보장하기 위해 HSM(Hardware Security Module)이나 Hashi Corp's와 같은 툴
- Web에서 흔히 사용되는 보안 형식인 SSL처럼 NuCypher KMS도 분산 app에서 흔히 사용될 것이라는 전망

NuCypher 란?

- Bitcoin, Ethereum과 같은 중앙 기관이 필요 없는 분산형 네트워크상에서 동작함
- 보통의 암호화는 아래와 같은 공개키, 개인키 암호화 방식을 이용
- NuCypher는 PRE(Proxy re-encryption, PKE와 유사)를 이용함
- PKE가 1대1 통신 암호화에 적합하다면, PRE는 임의의 N대N 통신에 적합함


PRE란?

Alice의 키: pkA, skA,   Bob의 키 : pkB, skB 라 가정한다.
Alice 가 Bob에게 메시지 M을 보내기 위해 Alice의 개인키 skA와 Bob의 공개키 pkB를 사용하여 위 식과 같은 새로운 키를 생성한다. 
그 다음 cA(Alice의 개인키인 skA로 암호화한 메시지 M)을 rkA->B로 다시 암호화한다. 
결과적으로, Bob은 자신의 개인키인 skB를 통해 M을 해독할 수 있게 된다. 

이를 그림으로 나타낸 것이 아래의 encryption과 decryption architecture

캡처6.PNG


시장상황에 대한 분석

  • 관련 시장 분석

캡처7.PNG

  • 경쟁제품 조사 비교

◇ 멜론(Melon)

2004년 서비스를 시작한 멜론은 국내 최초이자 전 세계 최초로 유료 음악 스트리밍 서비스를 시작한 사이트다. 멜론은 2018년 6월 기준 465만 명 이상 유료회원을 보유하고 있다. 이는 2위 업       체 지니 뮤직의 유료회원 190만여 명과 비교해 약 2.5배 이상 많은 숫자다. 멜론은 IT(정보기술) 기업 카카오의 자회사 카카오M에 인수된 후 2년간 유료회원을 100만 명 이       상 늘린 것으로 집계됐다. 업계에서는 멜론의 시장 점유율이 50% 이상인 것으로 추정한다. 한국인터넷기업협회가 올해 5월 발표한 ‘모바일 이용행태 보고서’에 따르면 멜론을 음악 감상에 이용하는       국내 수용자 비율은 47.4%로 유튜브의 75.4%에 이은 2위다(복수응답). 

◇ 사운드클라우드(Sound Cloud)

독일에서 가장 인기 있는 스트리밍 서비스는 독일 베를린에 본사를 두고 있는 ‘사운드클라우드(SoundCloud)’로 독일에서만 약 1억 7,500만 명의 가입자를 확보하고 있다. ‘사운드클라우드’는 현지 인디뮤지션과의 교류를 통해 확보한 폭넓은 음악 라이브러리가 특징이다. ‘사운드클라우드’는 2016년 말 독일에서 프리미엄 스트 리밍 서비스 ‘사운드클라우드 고(SoundCloud Go)’를 시작했다. 한 달에 9.99유로를 지불하는 구독 서비스는 고품질 음원 및 현지 인디뮤지션들의 음악으로 구성된 1억 3,500만 트랙의 음원 을 이용자에게 제공한다.

◇ Youtube

유튜브 프리미엄(YouTube Premium) 스트리밍 서비스는 기본적으로 기존의 유튜브 레드(YouTube  Red)와 유튜브 뮤직(YouTube Music)을 합친 서비스다. 구글은 월 12달러인 유튜브 프리미엄과 함께 월 10달러인 유튜브 뮤직 프리미엄(YouTube Music Premium)도 공개했다. 유튜브 프리미엄에는 유튜브 뮤직이 포함되는 개념이다. 이하 생략 


  • 마케팅 전략 제시
◇ 플랫폼 자체는 블록체인에서 동작하기에 블록체인 홍보와 플랫폼 홍보를 동시에 진행한다.

◇ 일정 자금이 모이면 콘테스트를 기획하여 사용자들에게 수익을 줄 수 있는 방안을 모색한다.

◇ 지속적인 업데이트를 통해 유저가 떠나가는 현상을 방지한다.

◇ SNS등을 이용하여 홍보한다. 단, 계정 생성 시 일정 코인 지급 등 보상을 같이 생각할 필요가 있다.

개발과제의 기대효과

기술적 기대효과

◇ IPFS기반 분산 형 서버를 이용하기에 기존 대비 스트리밍 비용을 획기적으로 절감할 수 있다.
◇ IPFS에 부족한 보안을 PyUmbral과 Nucypher을 접목하여 해결할 수 있다.
◇ 블록체인 특성 상, 기존과 같은 서버나 보안 시스템에 많은 투자를 할 필요가 사라져 서비스의 질을 높일 수 있으리라 생각된다.
◇ 사용자가 원할 때 블록에 접근하여 운영되는 정책 혹은 그 외의 투명성을 확인할 수 있다.

경제적, 사회적 기대 및 파급효과

◇ 기존 대형 플랫폼들의 수백억에 달하던 스트리밍 비용을 절감할 수 있다.
◇ 저작권자에게 보다 많은 수익이 돌아감으로써 그들의 생계에 도움이 될 수 있다.
◇ 진입 장벽이 낮기 때문에 유명하지 않은 아티스트도 자유롭게 음악을 올리고 수익을 낼 수 있다.
◇ 현재 Steem Coin의 가격은 약 1,000원이다. 만약 1억 원의 steem coin을 구매한다면 약 10만 코인
   이 된다. 이 경우 20%의 power로 한 번 보팅을 할 경우 약 1달러가 찍히게 된다. 하루로 환산하면 
   대략 40 달러가 되며 1년으로 환산할 경우 14,600 달러가 된다. 이자율이 약 15%이며 이는 은행의 
   평균 이자율인 2% 미만과 비교했을 때 상당한 수익이 됨을 알 수 있다.

기술개발 일정 및 추진체계

개발 일정

캡처8.PNG

구성원 및 추진체계

◇ 권정윤(PM): 일정 조율 및 방향성 제시, 서비스 기획, Nucypher를 이용한 암호화 개발
◇ 이광재: 시장 조사 및 문서화, Front 개발
◇ 이재혁: AWS 구축 및 DB 설계, Nucypher를 이용한 암호화 개발
◇ 최윤혁: 웹 디자인 및 IPFS와 블록체인 시스템 구현

설계

설계요약

◇ IPFS와 PyUmbral(+ GnuPGP) 그리고 블록체인을 이용한 플랫폼을 구축
◇ Hash Table을 제외한 모든 핵심 파일을 IPFS에 업로드 함으로써 스트리밍 비용 문제를 해결
◇ 플랫폼 사용 수수료를 10% 이내로 제한함을 통해 90% 이상의 수익을 저작권자에게 제공
◇ 블록체인을 이용해서 수익의 투명성 보장 -> 크리에이터들에게 더 많은 수익 배분 및 ‘좋아요’에 따른 투명한 수익 배분 -> 기존 서비스보다 더 많은 수익 보장으로 신규 사용자 유입 유도

시스템 구성

◇ Express를 이용하여 Frontend단의 Routing을 수행한다.
◇ EJS(HTML) + LESS(CSS)를 기반으로 webpack을 이용한 view를 제공한다.
◇ Django + MySQL을 이용하여 caching역할을 수행할 DB를 구축한다. 이 역시 IPFS로 관리된다.
◇ IPFS + PyUmbral(=Nucypher)을 이용하여 음원 DB를 관리한다.


시스템 구현 순서

◇ 먼저 AWS기반의 서버를 구축한 뒤 Filezilla를 통해 Routing을 수행할 파일을 업로드한다.
◇ Routing이 성공하면 EJS와 LESS를 이용한 간단한 View를 만든다.
◇ IPFS Agent의 Django와 연계하여 간단한 api들을 설계한다.
◇ 이 때 암호화 기법인 Nucypher과 Pyumbral을 적용하여 데이터를 보호한다.
◇ 연동이 완료되면 Frontend와 IPFS를 연계하여 음원들을 업로드한다.
◇ IPFS업로드에 성공하면 IPFS Agent에 음원 Hash 값을 올린다.
◇ Blockchain에 업로드가 성공할 시 Voting값을 넘겨주고 받는 것을 구현한다.
◇ 세부적인 기능들을 구현한 뒤 view를 다듬는다.

상세설계 내용

내용

결과 및 평가

완료 작품의 소개

프로토타입 사진 혹은 작동 장면

내용

포스터

내용

관련사업비 내역서

내용

완료작품의 평가

내용

향후계획

내용

특허 출원 내용

내용