DS Sender는 사용자의 브라우저에서 발견된 마그넷·토렌트 링크를 사용자가 직접 등록한 Synology NAS로 보내주는 확장 프로그램입니다.
외부로 어떠한 데이터도 전송하지 않으며, 분석·추적 도구를 일체 사용하지 않습니다. 모든 정보는 사용자 브라우저의 로컬 저장소(chrome.storage.local)에만 보관됩니다.
1. 개요
본 문서는 Chrome 확장 프로그램 DS Sender — Synology Download Station(이하 "본 확장")이 수집·저장·처리하는 정보의 범위와 사용자 권리, 그리고 외부 통신의 성격을 설명합니다. Chrome Web Store 정책과 한국 개인정보 보호법(PIPA)을 함께 고려하여 작성되었습니다.
2. 수집·저장하는 정보
아래 모든 정보는 사용자의 브라우저 내부(chrome.storage.local)에만 저장되며, 개발자 또는 제3자에게 전송되지 않습니다.
2-1. NAS 프로필 정보
- NAS 주소(URL)
- DSM 계정명
- 비밀번호 — 브라우저 익스텐션 저장소 구조상 평문으로 저장됩니다(아래 8. 보안 고지 참조)
- 신뢰 기기 토큰(
did) — DSM이 발급한 자동 재로그인용 토큰
- 일회용 OTP 코드 — 입력 직후 NAS로 전송된 뒤 즉시 비워집니다
- 프로필 이름, 기본 저장 폴더 등 사용자 설정값
2-2. 사용자 설정
- 가로채기 토글 (마그넷 링크, .torrent 파일, 우클릭 메뉴 등)
- 테마 (자동 / 다크 / 라이트)
- 언어 (자동 / 한국어 / 영어 / 일본어 / 중국어)
- 폴링 주기, 기본 다운로드 폴더 등
2-3. 스마트 라우팅 규칙
- 사용자가 직접 작성한 정규식 패턴과 목적지 폴더 매핑 정보
2-4. 오프라인 큐
- NAS 미접속 상태에서 전송에 실패한 작업의 URL, 페이지 URL, 재시도 횟수
3. 외부 통신 — 두 가지만 발생
본 확장이 발생시키는 외부 네트워크 통신은 다음 두 경우에 한정되며, 모두 사용자가 직접 의도한 동작에서만 일어납니다.
3-1. 사용자가 등록한 Synology NAS
- DSM Web API 호출: 로그인, 다운로드 작업 생성, 작업 목록 조회, 일시정지·재개·삭제
- 사용자가 설정에 입력한 NAS 주소로만 통신합니다
- 개발자 서버를 거치지 않습니다
3-2. 사용자가 토렌트 다운로드를 시도한 웹페이지
- .torrent 파일을 받기 위해 해당 페이지의 1st-party 컨텍스트에서 파일을 직접 가져옵니다
- 가져온 파일은 즉시 NAS로 multipart 업로드되며, 사용자 디스크에는 저장되지 않습니다
4. 제3자 전송·분석 도구
없음. 본 확장은 다음을 모두 사용하지 않습니다.
- 텔레메트리·사용량 통계
- 구글 애널리틱스·Mixpanel·Amplitude 등 분석 SDK
- 광고·트래킹·핑백
- 크래시 리포팅 SDK (Sentry 등)
- 업데이트 체크 외 일체의 개발자 서버 통신
개발자에게는 어떤 데이터도 전송되지 않습니다.
5. 데이터 보유 기간 및 삭제
- 모든 데이터는 사용자 브라우저의 로컬 저장소에만 존재합니다
- 확장 프로그램을 제거하면 Chrome이
chrome.storage.local 데이터를 자동으로 삭제합니다
- 옵션 → 고급/큐 → "백업·복원" 메뉴로 사용자가 직접 JSON 형식으로 내보내기·가져오기를 할 수 있습니다
- 프로필 카드의 "삭제" 버튼으로 개별 NAS 프로필을 즉시 삭제할 수 있습니다
- 옵션 → NAS 프로필 → "신뢰 재설정"으로 저장된 신뢰 기기 토큰(
did)을 즉시 폐기할 수 있습니다
6. 요청하는 권한과 사유
| 권한 | 사용 사유 |
storage | NAS 프로필·설정·라우팅 규칙·오프라인 큐를 사용자 브라우저에 저장 |
contextMenus | 우클릭 메뉴에 "NAS로 다운로드" 항목 추가 (사용자 옵션, 기본 꺼짐) |
notifications | 전송 성공·실패 알림 표시 |
alarms | NAS 작업 진행 상태 주기적 폴링 |
scripting | 사용자가 보고 있는 페이지에서 .torrent 파일을 1st-party 쿠키 컨텍스트로 받아오기 위함 |
activeTab | 위 scripting 동작의 대상 탭을 식별 |
downloads | .torrent 파일 다운로드 가로채기 (사용자 옵션, 기본 꺼짐) |
clipboardRead | Ctrl/Cmd+Shift+S 단축키로 클립보드의 magnet 링크를 NAS로 전송 |
host_permissions: http://*/*, https://*/* | 임의의 웹페이지에서 magnet·torrent 링크를 가로채 사용자가 지정한 NAS로 전송하는 것이 본 확장의 핵심 기능이므로 광범위한 host 권한이 필요합니다 |
7. 어린이 정보·민감 정보
- 본 확장은 어린이를 대상으로 한 서비스가 아니며, 사용자는 자신의 NAS와 네트워크 환경에 대한 이해가 필요합니다
- 의료, 금융, 위치, 생체, 사상·신념 등 어떠한 민감 카테고리 정보도 수집하지 않습니다
8. 보안 고지
비밀번호 평문 저장 — Chrome 확장 프로그램의 저장소(chrome.storage.local) 구조상, NAS 비밀번호는 평문으로 저장됩니다. 이는 확장 프로그램 일반에 적용되는 기술적 한계이며, 다른 확장 프로그램도 같은 방식으로 자격증명을 보관합니다.
공유 PC에서는 사용을 권장하지 않습니다. 다른 사용자가 같은 Chrome 프로필에 접근할 수 있다면 저장된 자격증명에 접근할 수 있습니다.
자체서명 HTTPS NAS — 자체서명 인증서를 사용하는 NAS와 통신하려면 브라우저에서 해당 인증서를 신뢰 항목에 추가하셔야 합니다.
9. 사용자 권리
- 저장된 정보의 열람·내보내기 — 옵션 페이지의 "백업·복원" 메뉴에서 언제든 JSON으로 추출 가능
- 삭제 — 프로필별 삭제, 신뢰 토큰 폐기, 또는 확장 프로그램 제거로 일괄 삭제
- 처리 정지 — 가로채기 토글을 모두 끄면 본 확장은 수동 동작만 수행합니다
- 본 정책에 대한 문의·이의 제기: info@youngsam.net
10. 정책 변경
- 본 정책이 변경될 경우 확장 프로그램의 업데이트 노트와 본 페이지에 변경 사항을 명시합니다
- 중요한 변경(처리 범위 확대 등)은 본 문서 상단의 "최종 수정" 날짜로 식별됩니다
English Translation
DS Sender — Synology Download Station
Privacy Policy
Version 1.0.0
Published 2026-05-14
Last updated 2026-05-14
DS Sender is a browser extension that forwards magnet and .torrent links you encounter in your browser to a Synology NAS you have personally configured. It transmits no data to any external server other than your own NAS, uses no analytics or tracking, and stores every piece of information exclusively in your browser's local storage (chrome.storage.local).
1. Overview
This document describes the data the Chrome extension DS Sender — Synology Download Station ("the extension") collects, stores and processes, the network calls it makes, and the rights users have over their data. It is written to satisfy Chrome Web Store policies and to be transparent for international users.
2. Information Stored
All of the following is stored only in the user's browser via chrome.storage.local. None of it is transmitted to the developer or any third party.
2-1. NAS profile data
- NAS URL
- DSM account name
- Password — stored in plain text due to the structural limits of extension storage (see §8)
- Trusted-device token (
did) issued by DSM for automatic re-login
- One-time OTP code — cleared immediately after being submitted to the NAS
- Profile name, default destination folder, and other user preferences
2-2. User preferences
- Interception toggles (magnet links, .torrent files, context menu, etc.)
- Theme (auto / dark / light)
- Language (auto / Korean / English / Japanese / Chinese)
- Polling interval, default download folder, etc.
2-3. Smart routing rules
- User-defined regular-expression patterns and their destination folders
2-4. Offline queue
- URL, originating page URL, and retry counter for transmissions that failed while the NAS was offline
3. Network Communication — Two Cases Only
The extension makes outbound network requests in only two cases, both initiated by explicit user actions.
3-1. The Synology NAS you registered
- DSM Web API calls: login, task creation, task list, pause / resume / delete
- Traffic goes only to the NAS URL you configured
- No developer-controlled server is involved
3-2. The web page from which you triggered a download
- The .torrent file is fetched in that page's 1st-party context so cookies for private trackers work
- The file is uploaded to your NAS via multipart and is never persisted to your local disk
4. Third-Party Services & Analytics
None. The extension contains no telemetry, no analytics SDKs (Google Analytics, Mixpanel, Amplitude, etc.), no advertising or tracking pings, and no crash-reporting SDK. No data is transmitted to the developer.
5. Data Retention & Deletion
- All data lives only in your browser's local storage
- Removing the extension causes Chrome to delete
chrome.storage.local automatically
- Options → Advanced/Queue → "Backup & Restore" lets you export/import your data as JSON
- The "Delete" button on a profile card removes that profile immediately
- Options → NAS Profile → "Reset Trust" revokes the stored
did trusted-device token immediately
6. Permissions and Their Justifications
| Permission | Reason |
storage | Persist NAS profiles, preferences, routing rules, and the offline queue locally |
contextMenus | Add a "Send to NAS" right-click item (user option, off by default) |
notifications | Surface success/failure notifications for transfers |
alarms | Poll the NAS for task progress periodically |
scripting | Fetch .torrent files from the user's current page using its 1st-party cookies |
activeTab | Identify the tab on which the scripting action runs |
downloads | Intercept .torrent file downloads (user option, off by default) |
clipboardRead | Send a magnet link from the clipboard via the Ctrl/Cmd+Shift+S shortcut |
host_permissions: http://*/*, https://*/* | The core feature is intercepting magnet/.torrent links on arbitrary websites, which requires broad host permission |
7. Children's & Sensitive Data
- The extension is not directed at children; it requires knowledge of NAS and networking concepts
- No sensitive categories (health, financial, location, biometric, ideological, etc.) are collected
8. Security Notice
Plain-text password storage. Browser extension storage (chrome.storage.local) does not provide an OS-level secret store, so the NAS password is stored as plain text. This is a structural limitation of the browser-extension platform that applies to comparable extensions as well.
Shared computers are not recommended. Anyone with access to your Chrome profile can read the stored credentials.
Self-signed HTTPS NAS. To communicate with a NAS using a self-signed certificate, you must add that certificate to your browser's trust store.
9. Your Rights
- Access & export — use the "Backup & Restore" menu to obtain all stored data as JSON at any time
- Delete — remove a profile, revoke the trusted-device token, or uninstall the extension to erase everything
- Stop processing — turning off every interception toggle reduces the extension to fully manual operation
- Questions or complaints: info@youngsam.net
10. Policy Changes
- Any change to this policy will be reflected in the extension's release notes and on this page
- Material changes (e.g., broader processing) are signposted by the "Last updated" date at the top of this document