2023/08/18

PikPak 명령 프롬프트 도구 | SHA 링크 지원

PikPak 명령 프롬프트 도구 | SHA 링크 지원

SHA 링크 지원하는 PikPak 써드파티 도구

바이두 초전 링크로 4G 이상 빠른 업로드」 문서에 설명했던 것처럼 바이두 넷디스크는 효율적이 파일 관리 및 업로드 최적화를 위해 ‘秒传链接(초전링크, 빠른 업로드)’라는 자체 해시값을 사용한다. 바이두 넷디스크의 해외 버전인 테라박스도 마찬가지이고 (바이두 넷디스크만큼 오래되었지만, 사용자 수는 적은) 115 클라우드도 SHA1이라는 고유 해시값을 사용해 파일을 공유/관리하는 것이 가능하다.

알다시피 해시값과 관련된 사항은 공식적으로 공개된 API가 아니라 클라우드 서버와 클라이언트 사이에서 작동하는 은밀한 메커니즘이고, 일부 영악한 사용자들이 이 메커니즘을 역이용하는 프로그램을 제공하는 경우가 있는데, 가장 대표적인 예가 앞 문서에 링크한 바이두 넷디스크 초전 링크 관련 써드파티 도구들이다. 같은 기능의 써드파티 도구가 115 클라우드도 있다.

그리고 오늘 소개하는 pikpakcli 도구 역시 PikPak 클라우드 시스템에서 사용하는 고유의 SHA 값을 추출하고, 그 추출한 해시값을 사용해 내 픽팍 클라우드에 파일을 생성하는 것이 가능하다.

PikPak ​​Command Line Tools | pikpakcli
<PikPak SHA 값은 MD5 등이 아닌 고유의 알고리즘을 사용하는 것 같다>

SHA 값의 유용함과 단점

1. 내 픽팍에 (픽팍 서버에 처음 업로드되는) 파일 A를 저장한다.
2. 파일 A의 SHA 값을 계산한다.
3. 파일 A를 삭제하고, 휴지통까지 비운다.
4. 파일 A의 SHA 값으로 파일 A를 복구한다.

결과는 어떠했을까?

클라우드에서 삭제한 파일은 서버에서도 영영 사라지는 것일까?」와 마찬가지로 내 픽팍 휴지통에서 비워진 파일도 SHA 값으로 복구하는 데 성공했다. 즉, 픽팍 클라우드도 바이두 넷디스크처럼 사용자가 삭제한 파일도 (백업?) 일부 기간 보관 중인 것으로 여겨진다(바이두 넷디스크는 최소 1년 이상 보관).

이를 역이용하면 「바이두 넷디스크 저장 공간 무제한 확장 팁」처럼 (삭제하긴 그렇고 그렇다고 보관하자니 공간이 부족해지는) 계륵 같은 파일들을 SHA 값으로 저장한 다음 원본 파일을 삭제하면 내 픽팍 공간을 상당히 절약할 수 있다.

픽팍 같은 경우 토렌트/마그넷 링크로 받은 파일은 토렌트/마그넷 링크만 보관하고 있으면 파일은 삭제해도 언제든지 불러올 수 있지만, 직접 업로드한 파일들은 그렇게 할 수 없다. 이런 파일들은 SHA 값만 저장하고 원본은 삭제하면 저장 공간을 절약할 수 있다. 만약 그런 파일들이 이미 여러 차례 공유된 파일이라면, 그래서 픽팍 사용자 중 단 한 사람이라도 보관하고 있다면, 해당 SHA 값의 유효기간은 매우 매우 길어질 것이다.

반면 이미 픽팍 서버에 저장된 SHA 값은 변경할 수 없다. 고로 SHA 값이 유출되면 그 파장은 ‘공유 링크’ 유출보다 더 크다. 왜냐하면, 공유 링크는 공유를 취소할 수 있고 누군가 공유를 유지해야만 자료를 받을 수 있지만, SHA 값은 공유 여부와 상관없이 사용할 수 있기 때문이다. SHA 값이 유출된 파일은 설령 최초 업로더가 원본을 삭제한다고 해도 SHA 값을 알고 있으면 언제든지 해당 파일을 불러올 수 있다. 고로 개인정보가 담긴 파일은 절대 SHA 값을 추출하지 말 것을 권장한다.

pikpakcli 다운로드

github.com/52funny/pikpakcli/releases
(Linux, Windows)

pikpakcli 사용법: #1 사용자 계정 설정

pikpakcli를 사용하려면 pikpakcli.exe 파일이 있는 폴더에 메모장 등을 사용해 PikPak 로그인 정보를 담은 config.yml 파일을 생성해야 한다. config.yml 내용은 다음과 같다.

username: xxxxx@gmail.com or +821xxxxxxxxxx
password: 암호(만약 # 같은 특수문자로 시작하는 암호라면 작은따옴표로 묶을 것, 예: ‘#dfdf23343’)

pikpakcli 사용법: #2 다운로드

pikpakcli download –p Movies
┗ Movies 폴더를 다운로드(-p는 소문자)
┗ 다운로드 폴더는 pikpakcli.exe 파일이 있는 폴더
pikpakcli download -p Movies Peppa_Pig.mp4
pikpakcli download Movies/Peppa_Pig.mp4
┗ Movies 폴더의 Peppa_Pig.mp4 파일 다운로드
pikpakcli download -c 5 –p Movies
┗ Movies 폴더를 다운로드, 동시 다운로로 개수 5(기본값은 3)

pikpakcli 사용법: #3 업로드

pikpakcli upload –p Movies
┗ (pikpakcli.exe 폴더의) 모든 파일을 Movies 폴더에 업로드
┗ 무료 계정도 3개 이상 업로드 가능
SHA 값으로 업로드하는데, 픽팍 공식 클라이언트보다 SHA 계산 속도가 매우 빠르다! pikpakcli upload –P(대문자!) VNc3xxxxxxxxxxxxxxx4Bo1
┗ 모든 파일을 폴더 ID VNc3xxxxxxxxxxxxxxx4Bo1에 업로드
-p 소문자는 폴더 경로 입력 시, -P 대문자는 폴더 ID 입력 시
┗ 폴더 ID는 URL 주소에서 확인
┗ 예: https://mypikpak.com/drive/all/VNc3xxxxxxxxxxxxxxx4Bo1 pikpakcli -c 20 –p Movies
┗ 모든 파일을 Movies 폴더에 업로드. 동시 업로드 개수 20(기본값 16)
pikpakcli upload "D:\Cloud\ePub\오늘 자료" -p Test
┗ 'D:\Cloud\ePub\오늘 자료' 폴더를 Test 폴더에 업로드

pikpakcli 사용법: #4 SAH 값 추출 및 사용

pikpakcli share -o sha.txt –p Test
┗ 내 픽팍 Test 폴더의 자료를 SHA 값으로 추출해서 sha.txt에 저장
┗ 추출할 폴더 경로 입력에서 오류가 발생한다면 폴더 ID 값을 사용할 것을 추천
pikpakcli new sha –i sha.txt –p Test
┗ sha.txt에 저장된 해시값을 사용해 내 픽팍 Test 폴더에 파일 생성

pikpakcli 사용법: #5 기타 유용한 명령어

PikPak ​​Command Line Tools | pikpakcli
<download 도움말 확인>
<pikpakcli ls -lH –P 폴더 ID(폴더 정보 확인)>
pikpakcli –h | pikpakcli help upload
┗ 도움말
pikpakcli ls -lH –p Test(or –P 폴더 ID)
┗ Test 폴더 정보
pikpakcli quota -H
┗ 내 픽팍 공간 정보

댓글 2개:

  1. 혹시 해당 툴이 현재는 막혔나요?
    저는 시도해보니까 "Login Failed: login error: captcha_invalid" 로 뜨면서
    설정 파일인 yml에 로그인 정보를 넣어도 연결이 안되서 다음으로 못넘어가더라고요...

    답글삭제
    답글
    1. 지금 해봤는데, 잘 됩니다. 암호를 작은따옴표로 묶어 보세요.

      삭제

댓글은 검토 후 게재됩니다.
본문이나 댓글을 정독하신 후 신중히 작성해주세요