diff --git a/_config.yml b/_config.yml index d0a55825..e78f1121 100644 --- a/_config.yml +++ b/_config.yml @@ -24,7 +24,7 @@ plugins: - jekyll-multiple-languages-plugin # jekyll-multiple-languages-plugin settings: -languages: ["en", "es", "it", "pl", "fr"] +languages: ["en", "es", "it", "pl", "fr", "ar"] exclude_from_localizations: ["img", "css", "fonts", "media", "404", "feed.xml", "404", "meta", "forum-funding-system", "_posts", "legal"] diff --git a/_data/lang/ar/footer-1.yml b/_data/lang/ar/footer-1.yml new file mode 100644 index 00000000..49bd4600 --- /dev/null +++ b/_data/lang/ar/footer-1.yml @@ -0,0 +1,50 @@ +- title: مصادر + subfolderitems: + - name: عن مونيرو + url: resources/about/ + - name: مونيروبيديا + url: resources/moneropedia/ + - name: دليل المُطور + url: resources/developer-guides/ + - name: دليل المستخدم + url: resources/user-guides/ + - name: RSS Feed + url: https://getmonero.org/feed.xml +- title: IRC قنوات الدردشة + subfolderitems: + - name: مونيرو + url: irc://chat.freenode.net/#monero + - name: مطور مونيرو + url: irc://chat.freenode.net/#monero-dev + - name: أسواق مونيرو + url: irc://chat.freenode.net/#monero-markets + - name: تعدين مونيرو + url: irc://chat.freenode.net/#monero-pools + - name: مجتمع مونيرو + url: irc://chat.freenode.net/#monero-community + - name: ترجمات مونيرو + url: irc://chat.freenode.net/#monero-translations + - name: مُعدات مونيرو + url: irc://chat.freenode.net/#monero-hardware +- title: المجتمع + subfolderitems: + - name: Reddit + url: https://reddit.com/r/monero + - name: Stack Exchange + url: https://monero.stackexchange.com/ + - name: BitcoinTalk Thread + url: https://bitcointalk.org/index.php?topic=583449.0 + - name: Mattermost Chat + url: https://mattermost.getmonero.org/ + - name: Telegram Chat + url: https://telegram.me/bitmonero +- title: مشروع مونيرو + subfolderitems: + - name: Open Alias + url: https://openalias.org/ + - name: مشروع كوفري + url: https://getkovri.org/ + - name: مختبر بحث مونيرو + url: resources/research-lab/ + - name: عدّه الصّحافه لمونيرو + url: press-kit diff --git a/_data/lang/ar/footer-2.yml b/_data/lang/ar/footer-2.yml new file mode 100644 index 00000000..f4649ef2 --- /dev/null +++ b/_data/lang/ar/footer-2.yml @@ -0,0 +1,6 @@ +- name: قانوني + url: legal +- name: شفره المصدر + url: https://github.com/monero-project +- name: المواصفات التقنيه + url: technical-specs/ diff --git a/_data/lang/ar/navigation.yml b/_data/lang/ar/navigation.yml new file mode 100644 index 00000000..baf75d73 --- /dev/null +++ b/_data/lang/ar/navigation.yml @@ -0,0 +1,52 @@ +- title: إبدأ + subfolderitems: + - page: ما هو مونيرو ؟ + url: get-started/what-is-monero + - page: الإستخدام + url: get-started/using + - page: القبول + url: get-started/accepting + - page: المشاركه + url: get-started/contributing + - page: التعدين + url: get-started/mining + - page: الأسئله المتكرره + url: get-started/faq +- title: التنزيلات + url: downloads/ +- title: آخر الأخبار + subfolderitems: + - page: جميع المشاركات + url: blog + - page: خطابات + url: blog/tags/monero%20missives.html + - page: سجل الإجتماعات + url: blog/tags/dev%20diaries.html + - page: الإصدارات + url: blog/tags/releases.html +- title: المجتمع + subfolderitems: + - page: الفريق + url: community/team + - page: الملتقي + url: community/hangouts + - page: الرعاه + url: community/sponsorships + - page: التجار + url: community/merchants +- title: موارد + subfolderitems: + - page: عن مونيرو + url: resources/about + - page: خريطه الطريق + url: resources/roadmap + - page: مختبر البحث + url: resources/research-lab + - page: مونيروبيديا + url: resources/moneropedia + - page: دليل المستخدم + url: resources/user-guides + - page: دليل المُطور + url: resources/developer-guides + - page: المواصفات التقنيه + url: technical-specs diff --git a/_data/lang/ar/roadmap.yml b/_data/lang/ar/roadmap.yml new file mode 100644 index 00000000..9c2ffba1 --- /dev/null +++ b/_data/lang/ar/roadmap.yml @@ -0,0 +1,114 @@ +- year: 2014 + accomplishments: + - name: تم إنشاء المشروع علي Bitcointalk + date: 2014-04-18 + status: completed + - name: تغيير الإسم من بيت مونيرو إلي مونيرو + date: 2014-04-23 + status: completed + - name: تم التعافي من هجمه اسبام + date: 2014-09-04 + status: completed + - name: تم نشر أول ورقتين بحث لمختبر بحث مونيرو + date: 2014-09-12 + status: completed + - name: تم نشر الورقه البحثيه الثالثه لمختبر بحث مونيرو + date: 2014-09-25 + status: completed + - name: 0.8.8.6 نشر الإصدار رقم + date: 2014-12-08 + status: completed +- year: 2015 + accomplishments: + - name: الورقه البحثيه الرابعه لمختبر بحث مونيرو + date: 2015-01-26 + status: completed +- year: 2016 + accomplishments: + - name: 0.9.0 نشر الإصدار رقم + date: 2016-01-01 + status: completed + - name: الورقه البحثيه الخامسه لمختبر البحث + date: 2016-02-10 + status: completed + - name: تحديث للشبكه لإستخدام 3 كأقل عدد لحجم الحلقات اللازم لكل المعاملات + date: 2016-03-22 + status: completed + - name: 0.10.0 نشر الإصدار رقم + date: 2016-09-18 + status: completed + - name: تحديث للشبكه لفصل معامله الاساس الي عده فئات + date: 2016-09-21 + status: completed + - name: 0.10.1 نشر الإصدار + date: 2016-12-14 + status: completed + - name: الإصدار التجريبي الاول للواجهه الرسوميه الرسميه + date: 2016-12-22 + status: completed +- year: 2017 + accomplishments: + - name: تحديث الشبكه للسماح بمعاملات الحقل السريه + date: 2017-01-05 + status: completed + - name: 0.10.2 الإصدار رقم , تم معالجه ثغيره خطيره + date: 2017-02-22 + status: completed + - name: 0.10.3.1 الإصدار رقم + date: 2017-03-27 + status: completed + - name: تحديث للشبكه لتعديل أقل حجم للكتل و خوارزميه الرسوم الديناميكية + date: 2017-04-15 + status: completed + - name: إعاده تصميم الموقع + date: 2017-07-04 + status: completed + - name: 0.11.0.0 إصدار رقم + date: 2017-09-07 + status: completed + - name: الكتل الرقيقه + date: 2017-09-07 + status: completed + - name: نهايه المرحله التجريبيه للواجهه الرسوميه + date: 2017-09-10 + status: completed + - name: تحديث للشبكه لإستخدام 5 كأقل عدد لحجم الحلقات اللازم و إلزام معاملات الحقل السريه لكل المعاملات + date: 2017-09-15 + status: completed + - name: 0MQ/ZeroMQ + date: September, 2017 + status: completed + - name: العناوين الفرعيه + date: October, 2017 + status: completed + - name: ثنائيه التوقيع (multisig) + date: December, 2017 + status: completed +- year: 2018 + accomplishments: + - name: تقنيه إثبات العمل جديده CryptoNoteV7 + date: 2018-04-06 + status: completed + - name: تحديث للشبكه لإستخدام 7 كأقل عدد لحجم الحلقات اللازم, دمح ثنائيه التوقيع , العناوين الفرعيه , وتغيير تقنيه إثبات العمل + date: 2018-04-06 + status: completed + - name: ترجمه الموقع إلي الفرنسيه والبولنديه + date: 2018-04-24 + status: completed + - name: إعاده تصميم نظام التمويل بالمنتدي + date: + status: ongoing + - name: نظام "مدي التأكيد" أكثر كفأً لمعاملات الحقل السري لتقليل حجم المعاملات + date: + status: upcoming + - name: الإصدار الأول لمشروع كوفري + date: + status: upcoming +- year: 2019 + accomplishments: + - name: حلول الطبقه الثانيه للسرعه و قابليه التوسع + date: + status: upcoming + - name: أوراق بحثيه إضافيه لمختبر بحث مونيرو + date: + status: upcoming diff --git a/_i18n/ar.yml b/_i18n/ar.yml new file mode 100644 index 00000000..446b915e --- /dev/null +++ b/_i18n/ar.yml @@ -0,0 +1,474 @@ +langs: + en: English + es: Español + it: Italiano + pl: Polski + fr: Français + ar: Arabic + +global: + date: '%Y/%m/%d' + monero: مونيرو + getting_started: إبدأ + copyright: حقوق الملكيه + monero_project: مشروع مونيرو + sitename: getmonero.org, مشروع مونيرو + wiki: مونيروبيديا + tags: المواضيع بالوصف + wikimeta: مونيروبيديا , موسوعه مونيرو المفتوحه للمعرفه + tagsmeta: جميع مقالات مدونه مونيرو التي تحتوي علي وصف + titlemeta: رئيسيه مونيرو , عمله رقميه آمنه وخاصه ولا يمكن تعقبها + terms: الشروط + privacy: الخصوصيه + copyright: حقوق الملكيه + untranslated: هذه الصفحه لم تترجم بعد , إذا أردت المساعده في الترجمه من فضلك تواصل معنا + +titles: + index: الرئيسيه + whatismonero: ما هو مونيرو (XMR)? + using: إستخدام مونيرو + accepting: قبول مونيرو + contributing: تطوير مونيرو + mining: تعدين مونيرو + faq: الأسئله الشائعه + downloads: التنزيلات + allposts: جميع مشاركات المدونه + team: فريق مونيرو + hangouts: الملتقي + events: الفاعليات + sponsorships: الداعمين + merchants: التجار & الخدمات + about: عن مونيرو + roadmap: خريطه الطريق + researchlab: مختبر بحث مونيرو + moneropedia: مونيروبيديا + userguides: دليل المستخدم + developerguides: دليل المُطور + technicalspecs: المواصفات التقنيه + themoneroproject: مشروع مونيرو + presskit: عِده مونيرو للصحافه + legal: قانوني + ffs: نظام التمويل بالمنتدي + ffs-cp: مقترحات إكتملت + ffs-fr: بحاجه إلي التمويل + ffs-ideas: أفكار + ffs-ot: مهمات مفتوحه + ffs-wip: جاري العمل عليها + blogbytag: التدوينه بالوصف + +index: + page_title: "مونيرو - آمن ,سري , لا يمكن تعقبها" + +home: + translated: "yes" + heading2: عمله رقميه سريه + monero_is_cash: مونيرو هو النقد في العالم المُتصل , إنه سريع وسري وآمن. مع مونيرو أنت مصرفك الخاص. يمكنك الإنفاق بأمان بإيقان أن الأخرين لا يمكنهم معرفه رصيدك أو تتبع نشاطك . + get_started: إبدأ + why_monero_is_different: لماذا يختَلِف مونيرو + monero_is_secure: مونيرو آمن + monero_is_secure_para: مونيرو هو عمله رقميه لا مركزيه, يعني أنه نقد رقمي آمن يعمل بواسطه شبكه من المُستَخدِمين. يتم تأكيد المعاملات بواسطه إجماع مُوزع من المستخدمين ومن ثم يتم تسجيل المعاملات في سلسله الكتل الغير قابله للتغيير. لستُ بحاجه للوثوق بأي طرف ثالث للتأكد من أن مونيرو خاصتك بأمان . + monero_is_private: مونيرو سري + monero_is_private_para: مونيرو يستخدم توقيعات الطوق والعناوين المخفيه ومُعامَلات الطوق السريه للتعتيم علي الرّاسل والمُرسل إليه والكِمّيه المُرسله في جميع المعاملات , مونيرو يوفر جميع مميزات العملات الرقميه اللا مركزيه بدون أي تنازلات من جهه السريه والخصوصيه . + monero_is_untraceable: مونيرو لا يمكن تتبعه + monero_is_untraceable_para: لأن عناوين الإرسال والإستقبال و الكميه المرسله مُعماه إفتراضياً فالمعاملات علي سلسله كتل مونيرو لا يمكن ربطها بأي مستخدم مُعين أو هويّه في العالم الحقيقي. + monero_is_fungible: مونيرو قابل للإستبدال دائماً + monero_is_fungible_para1: مونيرو + monero_is_fungible_para2: قابل للإستبدال + monero_is_fungible_para3: لأن السريه إفتراضيه في جميع المعاملات فلا يمكن درج أي وحدات من المونيرو في لائحه سوداء بواسطه تاجر أو مِنصّه تبادل بُناءً علي تاريخها السابق من المعاملات. + downloads: التنزيلات + downloads_windows: مونيرو لنظام ويندوز + downloads_mac: مونيرو لنظام ماك + downloads_linux: مونيرو لنظام لينُكس + downloads_blockchain: سلسله الكتل محدّثه + different_system: هل تحتاج المصادر لنظام تشغيل آخر ؟ + view_all_downloads: عرض جميع التنزيلات هنا. + latest_news: آخر الأخبار + more_news: أخبار أخري + moneropedia: مونيروبيديا + moneropedia_para: هل تريد البحث في معني المصلطحات والمفاهيم المستخدمه في مونيرو ؟ هُنا سوف تجد دليل مرتب هجائياً للمصطلحات ومعناها في مشروع مونيرو وأيضاً مشروع كوفري . + moneropedia_button: إقرأ مونيروبيديا + user_guides: دليل المستخدم + user_guides_para: أدله موضحه خطوه بخطوه لجميع الأشياء الخاصه بمونيرو مُفرقه بالتصنيف وتشمل كل شيء من أول كيف تنشأ محفظه حتي كيف تدعم الشبكه حتي كيف تقوم بتعديل هذا الموقع . + user_guides_button: قراءه دليل المستخدم + faq: الأسئله الشائعه + faq_para: لقد سمعنا الكثير من الأسئله علي مر السنين وجمعنا لراحتك وسهوله الوصول هذه التجميعه من الأسئله الشائعه المتنوعه, لا تقلق إذا لم تجد سؤالك هنا يمكنك دائما سؤال مجتمع مونيرو . + faq_button: قراءه الإجابات + +hangouts: + translated: "yes" + intro: مجتمع مونيرو متعدد ومختلف. لقد أتينا من كل مكان. لكن بكل تأكيد هناك أماكن نحب أن نلتقي بها معاً. ستجد بالأسفل معظمهم شاركنا الأن! + resources: موارد مجموعه العمل + resources_para: من جهتنا في دعم مجموعات العمل, مونيرو يحتوي علي العديد من الموارد يمكن ان يستخدمها المجتمع للإلتقاء وتخطيط المشاريع . علي mattermost يحتوي علي إعاده بث في معظم قنوان مونيرو المشهوره علي بروتوكول الدردشة عبر الإنترنت IRC. + irc: IRC Channels + irc_para: مجتمع مونيرو ينتفع بالعديد من قنوان الدردشه IRC كل منها لغرض معين. بعضها للعمل, وبعضها للإلتقاء بالمجتمع, سوف تجد أشهرهم في الأسفل. + stack_exchange: Stack Exchange + stack_exchange_para: مونيرو Stack Exchange هو طريقه سريعه للسؤال والحصول علي إجابات حول مونيرو , ستجد بالأدني بعض الأسئله والإجابات القيمه للأسئله الشائعه . + +merchants: + translated: "yes" + intro1: التجار من جميع الأنواع يُقدرون قيمه السريه الماليه التي يوفرها مونيرو. بالأدني قائمه للتجار الذين نعرف أنهم يقبلون مونيرو لمنتجاتهم او خدماتهم. إذا كان هناك شركه لا تقبل مونيرو أدناه أو كنت تود إضافه شركتك للقائمه, من فضلك + intro2: إفتح مسأله في GITHUB + disclaimer: | + "من فضلك لاحظ: هذه الروابط تم توفيرها هنا لسهوله الوصول ولإغراض تعريفيه فقط: ولا تشكل موافقه او دعم من مجتمع مونيرو لأي من المنتجات أو الخدمات أو رأي في الشركه أو المؤسسه المعروضه هنا. مجتمع مونيرو لا يتحمل أي مسئوليه لصحه أو قانونيه أو محتوي هذه المواقع. راسل هذه المواقع للحصول علي إجابات حول ما يحتويه موقعهم. ودائما تذكر مسئوليه المشتري " إحذر كمشتري " أنت مسئول عن القيام بالبحث الخاص بك والحكم قبل الشراء من أي موقع. " + +sponsorships: + translated: "yes" + intro: الأعمال التاليه قد ساندت مونيرو في هدفه لتوفير السريه الماليه للعالم. نحن شاكرين جداً لمشاركتهم. إذا كنت تود دعم مشروع مونيرو وعرض مشروعك في هذه الصفحه من فضلك قم بمراسله dev@getmonero.org. + +team: + translated: "yes" + core: Core + developers: المُطورين + developers_para1: في دوره حياه مشروع مونيرو قد شاركك أكثر من 200 مشارك . إذا كنت تود رؤيه جميع المشاركين, من فضلك إنظر في + developers_para2: صفحه المشاركين علي OpenHub + developers_para3: أدناه قائمه للأشخاص الذين ذهبوا إلي أبعد ما يمكن من أجل مونيرو. + community: المجتمع + mrl: مختبر البحث + thanks: شكر خاص + +downloads: + translated: "yes" + choose: إختار نظام تشغيلك + sourceblockchain: المصدر & سلسله الكتل + mobilelight: هاتف & خفيف + hardware: محفظه صلبه + intro1: إذا كنت تريد المساعده في إختيار التطبيق الصحيح. من فضلك إضغط + intro2: هنا + intro3: من أجل إجابه سريعه, من ثم إختر الإصدار المناسب لنظام التشغيل الخاص بك من الأدني. + note1: "لاحظ: هاشات الsha256 معروضه بجانب التنزيلات لسهوله الوصول لكن قائمه الهاشات الموقعه GPG موجوده هنا" + note2: ويجب معاملتها كمعيار افتراضي , مع فحص التوقيع بالمفتاح الموجود في الكود المصدري (in /utils/gpg_keys). + currentversion: الإصدار الحالي + sourcecode: الكود المصدري + blockchain1: إذا كنت تريد استخدام ملف تمهيدي لسلسله الكتل بدلأ من المزامنه من الصفر , يمكنك + blockchain2: استخدام هذا الرابط لأحدث ملف تمهيدي موجود. + blockchain3: في الغالب الأسرع هو المزامنه من الصفر, وأيضاً يحتاج ذاكره عشوائيه أقل بكثير ( الإستيراد جشع جداً ) + hardware1: مجتمع مونيرو قام بتمويل + hardware2: محفظه صلبه مخصصه + hardware3: مازال العمل عليها قائماً. وأيضاً شركه ليدجر قد طورت المحفظه الصلبه الخاصه بهم + hardware4: ويمكنك الأن إستخدام مونيرو علي محفظه ليدجر + mobilelight1: محافظ الهاتف او المحافظ الخفيفه التاليه تعتبر آمنه بواسطه أعضاء موثوق بهم من المجتمع. إذا كان هناك محفظه ليست معروضه هنا يمكنك طلب فحصها من قبل المجتمع. إذهب إلي + mobilelight2: الملتقي + mobilelight3: للتواصل معنا + clionly: معدات سطر الأوامر فقط + +monero-project: + translated: "yes" + kovri: مشروع كوفري يستخدم تقنيه التشفير بين الطرفين فلا يحتاج الراسل او المستلم بأي معامله مونيرو الكشف عن عنوان الip الخاص به إلي الجهه الأخري أو أي طرف تالت يراقب المعامله ( سلسله الكتل ). ويتم ذلك من خلال نفس التقنيه التي يعمل من خلالها الإنترنت المُظلم, i2p ( بروتوكول الإنترنت الخفي ). هذا المشروع حالياً قيد التطوير ولم يتم دمجه مع مونيرو بعد . + kovri_button: زياره موقع كوفري . + openalias: يقوم مشروع OpenAlias بتبسيط الدفع بالعملات الرقميه من خلال تقنيه FQDNs ( أسماء نطاقات مؤهله بالكامل مثال example.openalias.org ) لعناوين محافظ مونيرو بطريقه تحافظ علي خصوصيه الجميع . المشروع قيد التنفيذ وقد تم دمجه بالفعل بالعديد من محافظ مونيرو . + openalias_button: زياره موقع OpenAlias + +press-kit: + translated: "yes" + intro1: هنا ستجد رمز وشعار مونيرو بالأسفل. يمكنك إختيار أي حجم تريده أو تنزيل الملف والتعديل علي الشعار كما تريد. + intro2: لاحظ أن إختيار الخلفيه البيضاء يجعل الخلفيه بيضاء خلف رمز مونيرو فقط, وليست خلفيه للصوره كامله. + intro3: أخيراً, يمكنك تحميل كل شيء في هذه الصفحه في ملف مضغوط واحد بالضغط + intro4: هُنا. + noback: بدون خلفيه + whiteback: خلفيه بيضاء + symbol: رمز مونيرو + logo: شعار مونيرو + small: صغير + medium: متوسط + large: كبير + symbol_file: الرمز .ai ملف + logo_file: الشعار .ai ملف + +accepting: + translated: "yes" + title: تعليمات واجهه سطر الاوامر + basics: الأساسيات + basics_para1: يعمل مونيرو بطريقه مختلفه قليلاً عن التي ربما قد تكون إعتدت عليها في باقي العملات الرقميه الأخري. في حاله عمله رقميه مثل البتكوين ونظم الدفع الكثيره المشتقه للتجاره الإلتكرونيه سوف تلاحظ إنشاء عنوان دفع جديد لكل معامله أو مستخدم. + basics_para2: لكن لأن مونيرو يحتوي علي خاصيه " العناوين المخفيه " لا يوجد حاجه لعنوان دفع منفصل لكل معامله او مستخدم. ويمكن إستخدام عنوان حساب واحد. فعندما يستلم التاجر دفعه من مشتري يزوده البائع بـ" هويه للمعامله " + basics_para3: هويه المعامله هو عباره عن رقم سداسي عشري يبلغ طوله 64 حرفاً, ويتم إنشاؤه بشكل عشوائي بواسط التاجر , مثال لهويه المعامله :" + checking: التحقق من معامله بواسط سطر اوامر مونيرو + checking_para1: | + إذا كنت تريد التحقق من معامله بواسط سطر اوامر مونيرو يمكنك إستخدام أمر "المعاملات" متبوع بـ"هويه المعامله" أو المعاملات التي تريد التحقق منها مثال : + checking_para2: إذا كنت تريد التحقق من المعاملات بطريقه برمجيه تابع التفاصيل في القسم التالي. + receiving: إستلام معامله خطوه بخطوه + receiving_list1: إنشاء عشوائي ل 64 رقم عشري كهويه المعامله + receiving_list2: زوّد الشخص الذي سيقوم بالدفع بعنوان مونيرو و هويه المعامله + receiving_list3: تحقق من المعامله بواسط أمر "المعاملات" في سطر اوامر مونيرو + program: التحقق من معامله برمجياً + program_para1: للتحقق من معامله بطريقه برمجيه يمكنك إستخدام the get_payments or get_bulk_payments JSON RPC API calls. + program_para2: يلزم ذلك معامل payment_id مع هويه دفع مفرده + program_para3: هذه هي الطريقه المفضله, وتحتاج إلي معاملين, payment_ids وهو مصفوفه من هويه المعاملات و المُعامل min_block_height وهو إختياري طول الكتله من سلسله الكتل لبدأ البحث منه. + program_para4: | + فيما يلي مثال علي نتيجه الأمر : + program_para5: من المهم ملاحظه ان الناتج معروض في وحدات مونيرو الاساسيه وليس الوحدات التي تعرض إفتراضياً في تطبيقات المستخدم النهائي. أيضاً منذ أن المعامله غالباً لديها عده مخرجات التي تتكون منها الكميه المطلوبه للمعامله, المبالغ يجب ان تُجمع بواسط tx_hash او payment_id مضافه معاً . بالإضافه, يمكن أن يكون لعده مخرجات نفس الكميه, فمن الحتمي عدم تصنيف البيانات الناتجه من استدعاء get_bulk_payments + program_para6: Bقبل البحث عن معاملات من المفيد البحث في the daemon RPC API (the get_info RPC call) لمعرفه إذ كان هناك كتل جديده تم إستلامها. غالبا يجب أن تبحث من هذه الكتله عن طريق تحديدها كـ min_block_height to get_bulk_payments + scanning: البجث عن معاملات برمجياً + scanning_list1: إحصل علي طول الكتله الحالي من الخادم, قم بالمتابعه فقط إذا كان هناك زياده منذ آخر بحث + scanning_list2: إستدعي الـ get_bulk_payments RPC API بآخر طول كتله بحثت عنها و قائمه هويات الدفع الخاصه بك + scanning_list3: إحفظ طول الكتله الحالي كآخر طول تم الحث عنه + scanning_list4: إحذف المُكرر بناء علي هاش المعاملات التي إستلمناها بالفعل وتمت معالجتها + +contributing: + translated: "yes" + intro: مونيرو هو مشروع مفتوح المصدر, يُقاد من قبل المجتمع , موضح بالأدني طرق عديده لمسانده المشروع . + network: ساند الشبكه + develop: طوّر + develop_para1: مونيرو مكتوب أساسياُ بلغه c++. كمشروع لا مركزي أي شخص مرحب به للإضافه أو القيام بالتعديلات في الكود الموجوده بالفعل. يتم إضافه طلبات السحب بناءً علي إجماع المجتمع. إنظر + develop_para2: المستودعات + develop_para3: والقضايا + develop_para4: العالقه. + full-node: قم بتشغيل خادم كامل + full-node_para: شغّل monerod خادم مونيرو مع منفذ 18080. تشغيل خادم كامل يضمن الحصول علي أعلي خصوصيه وسريه ممكنه لمعاملاتك علي مونيرو. ويحسن من توزيع سلسله الكتل علي المستخدمين الجدد. + mine: عدّن + mine_para1: التعدين يضمن أمان ولامركزيه شبكه مونيرو. في واجهه سطر مونيرو للأوامر وواجهه مونيرو الرسوميه يمكن تفعيل التعدين في الخلفيه. يمكن رؤيه موارد أخري علي التعدين + mine_para2: هُنا. + ffs: زياره نظام تمويل المنتدي + ffs_para1: مونيرو يستخدم + ffs_para2: نظام تمويل بالمنتدي + ffs_para3: حيث يتم عرض المشاريع للتطوير وتمويل المجتمع. يتم عقد التمويل في الضمان ويتم مكافئه المطورين بناءً علي تحقيق الإنجازات المتفق عليها. أي شخص يمكنه عرض فكره جديده أو تمويل فكره موجوده بالفعل. + donate: تبرّع + donate_para1: التطويرات القائمه مدعومه من قبل التبرعات و + donate_para2: الرعاه. + donate-xmr: التبرع بالمونيرو + donate-xmr_para: يُمكن إرسال التبرعات علي + or: أو + donate-btc: التبرع بالبتكوين + donate-btc_para: يُمكن إرسال التبرعات علي + donate-other: غير ذلك + donate-other_para1: بريد + donate-other_para2: لوسائل أخري للتبرع أو إذا أحببت أن تكون من الراعيين لمشروع مونيرو. + +faq: + translated: "yes" + q1: كيف يكون لمونيرو قيمه ؟ + a1: مونيرو له قيمه لأن الناس مستعده لشراءه. إذا لم يكن هناك مَن يُريد شراءه لن يكون له أي قيمه. سعر مونيرو يُحدد بالعرض والطلب, يزيد سعر مونيرو إذا زاد الطلب عن العرض ويَقل السعر في حاله حدوث العكس. + q2: كيف أحصل علي مونيرو؟ + a2: يمكنك شراء مونيرو من أحد منصات التداول أو من أحد الأشخاص.وأيضاً يمكنك تعدين مونيرو والحصول علي العمله من مكافئه الكتل. + q3: ماهي الرموز التذكيريه؟ + a3: الرموز التذكيريه هي عباره عن 25 كلمه يمكن إستخدامها لإستعاده حسابك من أي مكان. حافظ علي هذه الكلمات بِحِرص ولا تشاركها مع أي شخص. يمكنك إستخدام هذه الكلمات لإستعاده حسابك حتي لو تعطل الحاسوب الخاص بك. + q4: كيف تختلف سريه مونيرو عن العملات الأخري ؟ + a4: | + مونيرو يستخدم ثلاث تقنيات سريه مختلفه: توقيعات الطوق, معاملات الطوق السريه (RingCT), و العناوين المخفيه. هذه التقنيات تخفي المُرسل والكميه والمُستلم في المعاملات. جميع المعاملات في الشبكه سريه. لا يوجد طريقه لإرسال معامله شفافه عن طريق الخطأ. هذه الخاصيه توجد فقط في مونيرو. لا تحتاج للثقه في أي شخص من أجل سريه معاملاتك وخصوصيتك. + q5: لماذا تأخذ محفظتي وقت طويل للمزامنه ؟ + a5: إذا كنت مٌشغل خادم كامل علي جهازك تحتاج لنسخ سلسله الكتل كامله علي جهازك. وهذا يأخذ وقتاً طويلاً. خاصه علي الأقراص القديمه أو إذ كان لديك إتصال ضعيف بالإنترنت. إذا كنت تستخدم خادم عن بعد يحتاج جهازك الحصول علي نسخه من جميع المخرجات, ويمكن أن يأخذ هذا عده ساعات. كُن صبوراً, إذا كنت تريد التضحيه ببعض الخصوصيه في سبيل سرعه المزامنه يمكنك إستخدام محفظه خفيفه بدلاً من ذلك. + q6: ما الفرق بين المحفظه الخفيفه والمحفظه العاديه ؟ + a6: في المحفظه خفيفه الوزن تقوم بإعطاء مفتاح الرؤيه الخاص بك إلي خادم ويقوم الخادم بالبحث في سلسله الكتل عن المعاملات القادمه إلي حسابك. هذا الخادم سوف يعلم عندما تصلك معامله لكنه لن يعلم الكميه او المصدر للمعامله او إلي أين تُرسل نقودك. إمكان استخدامك لخادم خاص بك يتوقف علي برنامج المحفظه المستخدمه . للحصول علي خصوصيه افضل إستخدم محفظه عاديه التي يمكن إستخدامها مع خادم لخاص بك. + q7: كيف يختلف مونيرو عن البتكوين ؟ + a7: مونيرو ليس مبني علي البيتكوين. مونيرو مبني علي بروتوكول كريبتونوت. البتكوين هو نظام شفاف تماماً يمكن لأي شخص رؤيه الكميه المُرسله وعناوين المُرسِل والمُستَلِم لأي معامله. مونيرو يخفي هذه المعلومات لحمايه خصوصيه المستخدمين في جميع المعاملات. أيضاً حجم الكتل في مونيرو والرسوم متغيره, ولمونيرو خوارزميه تأكيد-العمل مضاده للأجهزه المخصصه للتعدين وذلك ضمن العديد من الإختلافات الأخري. + q8: هل يوجد لمونيرو حد لحجم الكتل ؟ + a8: لا, مونيرو لا يحوي حد لحجم الكتل. بدلاً من ذلك يمكن لحجم الكتل أن يزيد أو يقل مع الوقت بناءً علي الطَلَب. هو فقط مُحكم بحجم نمو معين لمنع النمو الصارخ. + q9: ما هي سلسله الكتل؟ + a9: سلسله الكتل هو نظام تخزين لجميع تاريخ المعاملات علي شبكه مونيرو. كل دقيقتين يتم تكوين كتله جديده بآخر معلومات المعاملات يتم إضافته إلي سلسله الكتل. هذه السلسله تُمكن الشبكه من تاكيد الكميه التي يمتلكها كل حساب وتجعلها مرنه في وجه الهجمات ومحاولات مركزيتها. + q10: ما هو كوفري (Kovri)؟ + a10: كوفري هو مُوَجِه لمشروع الإنترنت الخفي (I2P) مكتوب بلغه C++. مشروع الإنترنت الخفي (I2P) هو عباره عن شبكه مخفيه مثل شبكه التور (TOR) مع إختلاقات تقنيه عديده. كوفري هو مشروع مستقل عن مونيرو, لكنه سيعمل مع مونيرو وكذلك العديد من المشاريع الأخري. يخفي كوفري بث المعاملات, فلا تستطيع الخوادم الأخري معرفه مصدر المعامله. سيستخدم كوفري لإخفاء كل معاملات مونيرو عبر شبكه الإنترنت الخفي (I2P) فيمنع الأخرين من معرفه أنك تستخدم مونيرو من الأساس. حالياً كوفري في مرحله تجريبيه ولم يتم دمجه تماماً مع مونيرو. تعلم المزيد عن مشروع كوفري من خلال موقع المشروع. + q11: ماهي خاصيه الإستبداليه ولماذا تعتبر مهمه ؟ + a11: الإستبداليه هي خاصيه بسيطه للمال وتعني أنه ليس هناك أي فرق بين كميتين من نفس القيمه. إذا إستبدل شخصين 10 و خمستين لم يخسر أحدهما اي شيء. مع ذلك دعنا نفترض أن الجميع يعرف أن هذه ال10 كانت مستخدمه سابقاً في هجمه إختراق, هل سيقوم الشخص الأخر بالتبديل في هذه الحاله ؟ غالباً لا. برغم أن الشخص الذي يملك ال10 ليست لديه أي صله بهجمه الإختراق تلك, هذه هي المشكله, منذ أنه يجب علي المستلم التحقق من تاريخ الاموال التي يتلقاها حتي لا ينتهي الأمر به بأموال ملوثه. مونيرو يتمتع بخاصيه الإستبداليه, وتعني أنك لا تحتاج أن تقوم بكل هذا الجهد, لأنه ليس هناك تاريخ شفاف لهذه الأموال من الأساس . + q12: لو أن مونيرو خاص لهذه الدرجه كيف يمكننا التأكد من أنه لا يتم طباعته من الهواء ؟ + a12-1: في مونيرو, كل ناتج معامله مربوط بشكل فريد بصوره مفتاح التي لا يمكن إنشاؤها إلا بواسطه المالك لهذا الناتج. صور المفاتيح التي تستخدم أكثر من مره يتم رفضها بواسطه المُعدنين كمعامله مُتكرره ولا يمكن إضافتها في كتله سليمه. عندما يتم إستلام معامله جديده يتحقق المعدنين من أن صوره المفتاح لا توجد بالفعل في معامله سابقه للتأكد من أنها ليست مُعامله مُتكرره. + a12-2: يمكننا أيضاً معرفه أن كميه المعاملات سليمه علي الرغم من أن قيمه المعاملات المُرسله وناتجها مُشفرين ( مُشفرين لكل الناس عدا المُستلم ). لأن الكميه مُشفره عن طريق التزامات بيدرسن (Pedersen commitments) ما يعني ذلك أنه لا يُوجد مُلاحظ يمكنه معرفه المُدخلات والمُخرجات لكن يمكن عمل عمليات حسابيه علي إلتزامات بيدرسن لتأكيد أنه لم يتم إنشاء أي مونيرو من الهواء . + a12-3: طالما أن كميه المُخرجات المُشفره التي أنشأتها تُساوي نتيجه جميع المُدخلات التي يتم صرفها ( والتي تحوي مُخرج للمُستلم وآخر وهو الباقي ويعود لك و ايضاً رسوم المعامله وهي غير مشفره) بذلك تكون المعامله صحيحه ولم يتم إصدار أي مونيرو من الهواء. إلتزامات بيدرسن تعني أنه يمكن التأكد من أن مجموع النواتج مُتساوي. لكن القيمه الفرديه لكل عمليه جمع وحدها و المدخلات و المُخرجات وحدها لا يمكن تحديدها. + +mining: + translated: "yes" + intro1: مونيرو هو عمله رقميه تعتمد علي طريقه خوارزميه تأكيد-العمل في التعدين لتحقيق الموافقه الإجماعيه الموزعه . أدناه ستجد المعلومات والموارد اللازمه للبدأ في التعدين. + intro2: مشروع مونيرو لا يُرجّح حقل (تجمّع للتعدين) أو برامج أو مُعدات معينه والمعلومات أدناه لأغراض معرفيه فقط. + support: الدعم + support_para1: إنظر + support_para2: المُلتقي, + support_para3: /r/moneromining (English) + support_para4: و + pools: الحقول + pools_para1: قائمه بالحقول الموثوقه من قبل مونيرو + pools_para2: هُنا. + benchmarking: مقارنه للمُعدات + benchmarking_para1: إنظُر هنا + benchmarking_para2: قائمه بأنواع الـ CPU/GPU ومُعدل التعدين الخاص بهم. + software: برامج التعدين + software_para: لاحظ أن بعض البرامج تحوي رُسوم للمُطور + +using: + translated: "yes" + intro: إجراء مُعاملات علي مونيرو هو أمر يُمكن تبسيطه. هذه الصفحه مُوجهه لمساعده المستخدمين في هذا الأمر . + learn: 1. تَعَلَم + learn_para1: مونيرو هو عمله رقميه آمنه, سريه, لا يمكن تعقبها. المُجتمع والمُطورين مُلتزمين بحمايه هذه القيم. تعلم أكثر عبر قراءة + learn_para2: ما هو مونيرو + learn_para3: . + learn_para4: الكود المصدري + learn_para5: أيضاً مُتاح للتقيم والمناقشه + support: 2. إطلب المساعده + support_para1: هُناك مجتمع كبير ومُتعاون سيُساعدك إذا واجهت أي صعوبات. إنظر + support_para2: المُلتَقي + support_para3: لمزيد من المعلومات. + generate: 3. إنشاء محفظه + generate_para1: تحتاج محفظه مونيرو لتأمين أموالك. إنظر + generate_para2: صفحه التنزيلات + generate_para3: لقائمه المحافظ المُتاحه. + generate_para4: اسهل طريقه لتشغيل خادم مونيرو, بدون التأثير علي باقه الإنترنت الخاصه بك هي شراء خادم إفتراضي خاص (VPS). نَحن نرجّح بقوّه + generate_para5: إستخدام + generate_para6: رمز للحصول علي خصم إضافه علي أسعارهم المميزه بالفعل 6 دولارات بالشهر. بإستخدام هذا الرمز و/او + generate_para7: رابط الدعوه الخاص بنا + generate_para8: سيساهم أيضاً في تمويل التطوير القائم في مونيرو. + acquire: 4. إحصل علي مونيرو + acquire_para1: يُمكن شراء مونيرو علي + acquire_para2: مِنصّه تداول + acquire_para3: بإستخدام العملات المحليه أو العملات الرقميه. طريقه أخري للحصول علي مونيرو من خلال + acquire_para4: التعدين, + acquire_para5: العمليه الحسابيه المعقده التي يتم بها تسجيل المعاملات تسجيلاً غير قابل للتعديل في سلسله الكتل. + send-receive: 5. إِرسل و إستَلِم مونيرو + send-receive_para1: تعلم كيف تُرسل وتستقبل مونيرو بالإطلاع علي + send-receive_para2: الدليل. + transact: 6. تعامل بمونيرو + transact_para1: يُمكن إستخدام مونيرو لشراء العديد من المنتجات والخدمات. إنظر + transact_para2: صفحه التجار. + +what-is-monero: + translated: "yes" + need-to-know: ما تحتاج إلي معرفته + leading: مونيرو هي العمله الرقميه الرائده بالتركيز علي المعاملات السريه ومقاومه الرقابه. + leading_para1: معظم العملات الرقميه الموجوده, بما فيها البتكوين والإيثيريوم لديهم سلسله كتل شفافه, ويعني ذلك أن المعاملات مفتوحه للتحقق والتعقب من قِبَل أي شخص في العالم. ضف إلي ذلك عناوين الإرسال والإستقبال لهذه المعاملات يحتمل ربطها بشخصيه صاحبها في العالم الحقيقي. + leading_para2: مونيرو يستخدم التشفير لحجب عناوين الإرسال والإستقبال وكذلك الكميه المرسله. + confidential: معاملات مونيرو سريه وغير قابله للتعقب. + confidential_para1: جميع المعاملات في مونيرو تُخفي عناوين الراسل والمُرسل إليه وكذلك الكميه المُرسله إفتراضياً. السريه الإفتراضيه دائماً تعني أن نشاط كل مستخدم علي شبكه مونيرو يعزز من سريه المستخدمين الآخرين. عكس العملات الرقميه الأخري الشفافه إنتقائياً ( مثل زد كاش ). + confidential_para2: مونيرو إستبدالي, بفضل خاصيه التعتيم (إخفاء عنوان الراسل والمُرسل إليه والكميه المُرسله) لا يُمكن لأجزاء مونيرو أن تكون مُلوثه عن طريق تاريخ المعاملات السابقه. وهذا يعني أن مونيرو دائماً يُمكن قبوله بدون خطر الرقابه . + confidential_para3: مشروع كوفري (Kovri), + confidential_para4: حالياً قيد التطوير + confidential_para5: " سيقوم بتوجيه وتشفير المعاملات عن طريقه خوادم برتوكول الإنترنت الخفي (I2P). سيقوم هذا بالتعتيم علي عنوان IP المُرسل ويوفر حمايه اكثر ضد مراقبه الشبكات." + grassroots: مونيرو لديه مجتمع ذو قاعده شعبيه جاذبه لافضل باحثي العملات الرقميه والمهندسين الموهوبين في العالم. + grassroots_para1: أكثر من + grassroots_para2: 240 مُطوّر + grassroots_para3: شاركوا في مشروع مونيرو, بما فيهم 30 مُطور جوهري. المنتديات وقنوات التواصل فعاله ومرحبه بالمشاركين. + grassroots_para4: مختبر بحث مونيرو و فريق التطوير الجّوهري و مُطورين المُجتمع دائماً ما يتخطون حدود الممكن فيما يتعلق بخصوصيه بالعملات الرقميه وأمنها. + grassroots_para5: مونيرو ليس بشركه, تم تطويره بواسطه خبراء التشفير والأنظمه الموزعه من جميع انحاء العالم الذين تبرّعوا بجُهدهم ووقتِهم او تم تمويلهم من قبل تبرعات المجتمع. يعني ذلك أن مونيرو لا يُمكن أن يتم إيقافه من طرف أي دوله ولا يخضع لقيود قانونيه معينه. + electronic: مونيرو هو النقد الإلكتروني الذي يتيح معاملات سريعه وغير مكلفه من وإلي أي مكان في العالم. + electronic_para1: لا يوجد فترات إنتظار لعده أيام أو مخاطره عمليات رد المدفوعات الإحتياليه. مونيرو آمن من " ضوابط راس المال" - وهي التدابير التي تحد من تدفق العملات التقليديه, تجدها أحياناً إلي حد مخيف في الدول التي تعاني من عدم الإستقرار الإقتصادي. + videos: Monero Videos (English) + +about: + translated: "yes" + history: لمحه تاريخيه + history_para1: تم إطلاق مونيرو في ربيع اﻵخر سنه 2014. إنطلاق عادل, تم الإعلان المُسبق عن الكود المرجعي ل(CryptoNote). لم يكن هناك أي تعدين مُسبق أو فعلي ولا يوجد نسبه من مكافئات الكتل تذهب إلي التطوير. أُنظر الموضوع الأصلي علي موقع حديث البتكوين + history_para2: هُنا. + history_para3: إقترح المؤسس Thankful_for_today بعض التغييرات التي أثارت الجدل فرفضها المجتمع. ومن تداعيات ذلك قيام فريق مونيرو الجوهري الحالي بفصل المشروع بعيداً عنه وتبع المجتمع هذا الفريق الأساسي الجديد ومنذ ذلك اليوم تولي هذا الفريق أمور المشروع. + history_para4: قام مونيرو بالعديد من التحسينات مُنذ الإطلاق. تم نقل سلسله الكتل إلي بنيه قاعده بيانات جديده توفر قدر أكبر من الكفائه والمرونه, تم وضع الحد الادني لتوقيعات الطوق (Ring Signature) حتي تكون جميع المعاملات سريه إفتراضياً, وتم دمج معاملات الطوق السريه (RingCT) لإخفاء الكميه المُرسله. وفرت جميع التحسينات كفائه أفضل للخصوصيه والأمان, أو سهلت الإستخدام, يستمر مونيرو في التطوير بهدف الخصوصيه والأمان في المقام الأول, وسهوله الإستخدام والكفائه في المقام الثاني. + values: قيَمَناَ + values_para: مونيرو هو أكثر من تقنيه. هو ما تمثله هذه التقنيه. بعض الفلسفات المُتبعه مسروده بالأدني. + security: الأمان + security_para: يجب أن يكون المستخدمين قادرين علي الثقه في إستخدام مونيرو بمعاملاتهم بدون التعرض لخطر حدوث خطأ أو هجوم. يُعطي مونيرو مكافئه تكوين الكتل كامله إلي المُعدنين, وهم عصب الشبكه الذين يوفرون الأمان لها. المعاملات مؤمنه بإستخدام آخر وسائل التشفير وأكثر أدوان التشفير المتاحه مرونه. + privacy: الخصوصيه + privacy_para: يأخذ مونيرو الخصوصيه بكل جديه. يجب أن يكون مونيرو قادراً علي حمايه مستخدمينه في المحاكم أو في أكثر الحالات تطرفاً من عقوبه الإعدام. هذا المستوي من الخصوصيه يجب أن يكون متاحاً لجميع المستخدمين, سواء كانو مؤهلين تقنياً أو ليس لديهم أي فكره كيف يعمل مونيرو. يجب أن يثق المستخدم في مونيرو و لا يشعر بأي ضغط يجعله يُغير عادات الإنفاق الخاصه به بسبب خطر إكتشاف اﻵخرين. + decentralization: اللامركزيه + decentralization_para: يلتزم مونيرو بتوفير أكبر قدر من اللامركزيه. مع مونيرو لست بحاجه للثقه بأي شخص آخر في الشبكه, ولا يتم السيطره علي الشبكه من قبل أي جماعه معينه, خوارزميه "تأكيد-العمل" سهله الوصول تجعل من السهل تعدين مونيرو علي الحواسيب العاديه, والذي يجعل شراء شخص لكميه كبيره من قوه التعدين أمر أكثر صعوبه, تتصل الخوادم ببعضها عن طريق برتوكول الإنترنت الخفي(I2P) لتقليل خطر كشف معلومات حساسه عن المعاملات و الرقابه (قريباً). قرارات التطوير مفتوحه وواضحه للعامه لمناقشتها. سجل مقابلات المُطورين يتم نشره علي الموقع كامل ومتاح للجميع. + + +developer-guides: + translated: "yes" + outdated: "Please note: الدلائل بالأدني تحتاج إلي تحديث لكنها تعتبر نقطه جيده للبَدأ." + rpc: RPC Documentation + daemonrpc: Daemon RPC Documentation + walletrpc: Wallet RPC Documentation + soon: More coming soon... + +user-guides: + translated: "yes" + general: عام + mining: التعدين + recovery: الإستعاده + wallets: المحافظ + offline-backup: كيفيه عمل نسخه إحتياطيه دون إتصال بالإنترنت + vps-node: كيفيه تشغيل خادم مونيرو علي خادم خاص إفتراضي (vps) + import-blockchain: إستيراد سلسله كتل مونيرو + monero-tools: ادوات مونيرو + purchasing-storing: شراء وتخزين مونيرو بأمان + verify-allos: تحقق من ملفات التثبيت علي ويندوز ولينُكس (متقدم) + verify-windows: تحقق من الملفات علي ويندوز (للمبتدئين) + mine-on-pool: كيفيه التعدين في حقل (تجمّع للتعدين) مع برنامج xmr-stak-cpu + solo-mine: كيفيه التعدين منفرداً بالواجهه الرسوميه + mine-docker: التعدين بواسطه Docker و XMRig + locked-funds: كيفيه إصلاح مشكله الاموال المُعلّقه + restore-account: كيفيه إسترجاع حسابك + qubes: عزل واجهه سطر الأوامر / الخادم مع نظام Qubes + Whonix + cli-wallet: البدأ مع واجهه سطر الأوامر + remote-node-gui: كيفيه الإتصال بخادم بعيد في الواجهه الرسوميه + view-only: كيفيه عمل محفظه رؤيه فقط + prove-payment: كيفيه إثبات إتمام معامله + restore-from-keys: إستعاده محفظه من المفاتيح + +roadmap: + translated: "yes" + completed: المهات المكتمله + ongoing: المهمات الجاريه + upcoming: المهمات القادمه + future: المستقبل + + +research-lab: + translated: "yes" + intro: لا يلتزم مونيرو بإنشاء عمله آمنه لامركزيه إستبداليه فقط . ولكن بالبحث المستمر في مجال الخصوصيه الماليه التي تنطوي علي العملات الرقميه. بالأدني ستجد أبحاث فريق مختبر بحث مونيرو والعمل قائم علي المزيد من الأبحاث. + mrl_papers: أبحاث فريق مختبر بحث مونيرو + abstract: نبذه مختصره + introduction: المقدمه + read-paper: قراءة البحث + mrl1: ملاحظه علي التتبع في برتوكول كريبتونوت ( CryptoNote ) 2.0 + mrl1_abstract: هذه النشره البحثيه تصف هجوماً جديراً بالإهتمام في نظام إخفاء الهويه القائم علي توقيعات-الطوق. نستخدم بروتوكول كريبتونوت (CryptoNote) 2.0 الذي تم نشره ظاهرياً بواسطه نيكولاس فان سابريرهاجن في 2012. لقد تم إثبات سابقًا أن التعتيم علي إمكانية التتبع لزوج مفتاح لمرة واحدة يعتمد على عدم إمكانية الوصول إلى كافة المفاتيح المستخدمة في إنشاء توقيع-الطوق. ويتيح ذلك إمكانيه التتبع بين توقيعات-الطوق, مسبباً خساره فادحه في التعتيم علي التتبع في الشبكه كلها إذا تم إختيار عناصر ضعيفه او إذ كان المهاجم يمتلك جزء كبير من الشبكه. التوقعيات مازلات تستخدم مره واحده, ولذلك, اي هجوم مماثل لن يقوم بالضروره بإنتهاك خصوصيه المستخدمين. وبالرغم من هذا, يمكن لمثل هذا الهجوم أن يضعف مقاومه بروتوكول كريبتونوت (CryptoNote) أمام تحليل سلسله الكتل. هذه النشره البحثيه لم تخضع للمراجعه, ولا تعكس سوي نتائج التحقيق الداخلي. + mrl2: التزييف في العملات الرقميه التي تستخدم بروتوكول كريبتونوت (CryptoNote) بإستخدام ثغره شجره ميركل (Merkle Tree) + mrl2_abstract: في 4 سبتمبر 2014 تم تنفيذ هجوم جديد وغير عادي ضد شبكه مونيرو. قام الهجوم بتقسيم الشبكه إلي فرعين يرفضون الإعتراف بصلاحيه الآخر. وكان لهذا الهجوم أثار لا تعد ولا تحصي, بعضها غير معروف إلي الأن. علي سبيل المثال كان للمهاجم فتره من الوقت يمكنه تنفيذ أي نوع ممكن من التزييف. هذه الورقه البحثيه تصف أوجه القصور في بروتوكول كريبتونوت (CryptoNote) التي أصبح من خلالها هذا الهجوم ممكن, وتصف الحل الذي تم تقديمه مبدئياً من قبل رافال فريمان من Tigusoft.pl و من ثم فريق (CryptoNote), ويصف الإصلاح القائم بالفعل في كود مونيرو. ويوضح بدقه ما فعلته الكتله التي قام عليها الهجوم في الشبكه. لم تخضع هذه الورقه للمراجعه ولا تعكس سوي نتائج التحقيق الداخلي. + mrl3: مونيرو ليس بهذا الغموض. + mrl3_abstract: مؤخراً كان هناك بعض المخاوف المنتشره عبر الإنترنت حول بروتوكول كريبتونوت (CryptoNote) قائمه علي حقيقه أنه أكثر تعقيداً من علي سبيل المثال بروتوكول البيتكوين ( Bitcoin). الغرض من هذا البحث تصحيح بعض المفاهيم الخاطئه و أملاً في إزاله الغموض المحيط بنظام توقعيات-الطوق (Ring-Signatures) الخاصه بمونيرو. سوف أبدأ بمقارنه الرياضيات المشاركه في توقيعات-طوق الخاصه بكريبتونوت( CryptoNote) (كماتم وصفها في البرتوكول) إلي الرياضيات في [FS] التي بُني عليها البروتوكول. بعد ذلك سأقوم بمقارنه الرياضيات في نظام توقيعات-الطوق لما هو موجود بالفعل في كود مصدر كريبتونوت (CryptoNote) . + mrl4: تحسين التعتيم في بروتوكول كريبتونوت (CryptoNote) + mrl4_abstract: قد حددنا العديد من هجمات التحليل المتاحه ضد بروتوكول كريبتونوت (CryptoNote 2.0) التي تهدف إضعاف عدم إمكانيه التتبع.نقوم بتحليل الحلول الممكنه, ومناقشه مزاياها وعيوبها, ونوصي بالتحسينات اللازمه لبروتوكول مونيرو التي ستقوم بمقاومه تتبع سلسله الكتل علي المدي الطويل. تشمل هذه التحسينات علي مستوي البروتوكول والشبكه أقل عدد لدمج توقيعات-الطوق (n = 2) , علي مستوي البروتوكول رفع هذه القيمه بعد سنتين إلي ( n = 4 ) , وعلي مستوي المحفظه (n = 4) في هذه الأثناء. ننصح أيضاً بنظام الند إلي الند في إرسال مخرجات معامله مونيرو. نناقش أيضاً طريقه إختيار غير موحده تعتمد علي العمر للتخفيف من هجمات تحليل سلسله الكتل الذي تم تحديده هنا. ولكننا لا نقدم أي توصيات رسميه بشأن دمجها لمجموعه متنوعه من الأسباب. ونناقش أيضاً بالتفصيل الأثار المترتبه علي هذه التحسينات. هذا البحث لم يتم مراجعته ولا يعكس سوي نتائج التحقيق الداخلي. + mrl5: المعاملات السريه لتوقيعات الطوق + mrl5_abstract: يُقدم هذا المقال طريقه إخفاء كميه المعاملات في العمله الرقميه اللامركزيه مونيرو . كالبتكوين تعتمد عمله مونيرو علي التوزيع من خلال عمليه إثبات-العمل (التعدين). بروتوكول مونيرو الأساسي مبني علي CryptoNote والذي يستهدم توقعيات-الطوق و مفاتيح المره الواحده لإخفاء واجهه و مصدر المعاملات. مؤخراً, تم مناقشه ودمج أسلوب إخفاء المعاملات بواسطه مُطور البتكوين جورج ماكسويل. في هذا المقال يتم وصف نوع جديد من نظام توقيعات-الطوق وهو توقيع مجهول متعدد الطبقات ويسمح بإخفاء مبلغ المعاملات ومصدرها ووِجهتها بكافئه معقوله . بعض ملحقات البروتوكول متوفره مثال (Aggregate Schnorr Range Proofs) و توقيعات-الطوق المزدوجه (Ring Multisignature).يود الكاتب ذكر أن المسودات المبكره لهذا تم نشرها علي قناه مونيرو والبتكوين عبر ال IRC . تم تسجيل المسودات بسلسله الكتل [14] توضح أنه قد بدأ العمل في صيف 2015 وإكتمل في أوائل شهر أكتوبر 2015 كما تتوفر نسخه إلكترونيه في http://eprint.iacr.org/2015/1098. + cryptonote: الورقه البيضاء لكريبتونوت (CryptoNote) + cryptonote-whitepaper: الورقه البيضاء لكريبتونوت (CryptoNote) + cryptonote-whitepaper_para: هذه هي الورقه الرسميه لكريبتونوت المكتوبه بواسطه فريق كريبتونوت. قرائتها سوف يعطيك فِهماً حول آليه عمل خوارزميه كريبتونوت في العموم. + annotated: الورقه البيضاء المُفصله + annotated_para: فريق بحث مختبر مونيرو نشر نسخه مُفصله من الورقه البيضاء لكريبتونوت. كمراجعه غير رسميه للإدعائات الموجود في الورقه البيضاء سطر بسطر . تقوم أيضاً بشرح المفاهيم الصعبه في مصطلحات سهله الفهم نسبياً. + brandon: مراجعه د.براندون جوديل للورقه البيضاء + brandon_para: هذه الورقه مراجعه رسميه لورقه كريبتونوت الأصليه بواسطه عضو مختبر بحث مونيرو الباحث د.براندون جوديل. يُلقي نظره مُتعمقه علي الإدعائات والرياضيات المَُقَدّمه في ورقه كريبتونوت. + + +specs: + translated: "yes" + fair_title: بدون تعدين مُسبق أو تعدين لحظي أو عمله رمزيه + fair_premine: لم يكن لمونيرو تعدين مُسبق أو لحظي + fair_token: لم يبيع مونيرو اي عمله رمزيه + fair_presale: لم يكن لمونيرو بيع مُسبق بأي شكل + pow_title: خوارزميه تأكيد-العمل + pow_name: كريبتونايت (CryptoNight) + pow_disclaimer: رُبما تتغير في المُستقبل + diff_title: إعاده توجيه الصعوبه + diff_freq: في كل كتله + diff_base: إستناداً إلي آخر 720 كتله, بإستثناء 20% من القيم الطوليه + block_time_title: وقت الكتله + block_time_duration: دقيقتان + block_time_disclaimer: ربما يتغير في المستقبل طالما أن منحني الإصدار محفوظ + block_reward_title: جائزه الكتله + block_reward_amount: تنخفض بسلاسه وإنشاء كتل أكبر من متوسط حجم آخر 100 كتله يخضع لغرامات + block_reward_example1: إنظر قيمه معامله الأساس في + block_reward_example_link: آخر كتله + block_reward_example2: لمعرفه قيمه المكافئه حالياً + block_size_title: حجم الكتله + block_size: مُتغيّر, أقصي حد ضعف متوسط آخر 100 كتله + block_emission_title: منحني الإصدار + block_emission_main: "أولاً, المنحني الرئيسي; حوالي 18.132 مليون عمله بنهايه مايو 2022" + block_emission_tail: "ثانياً, منحني الذيل; 0.6 مونيرو يتم إنشائهم كل دقيقتين بمجرد إنتهاء الإصدار الأساسي, يُترجم كـ أقل من 1% تضخم ويقل تدريجياً مع الوقت" + block_emission_disclaimer1: أُنظر + block_emission_disclaimer_link: الرسوم البيانية والتفاصيل + block_emission_disclaimer2: "" + supply_title: الحد الأقصى للإِصدار + supply_amount: لانهائي + sender_privacy_title: خصوصيه المُرسل + sender_privacy_mode: توقيعات-الطوق (Ring signatures) + recipient_privacy_title: خصوصيه المُستَلِم + recipient_privacy_mode: العناوين المخفيه (Stealth addresses) + amount_hidden_title: تعتيم الكميه + amount_hidden_mode: مُعاملات الطوق السريه (Ring confidential transactions) + + +blog: + title_1: الجميع + title_2: المدونه + title_3: المنشورات + tagged: الموصوفه ب + author: تم النشر بواسطه + date: تم النشر في + forum: إضغط هُنا للمشاركه في المناقشه حول هذا الموضوع في منتديات مونيرو + +tags: + all: المواضيع بالوصف + notags: لا يوجد مواضيع تحت هذا الوصف. diff --git a/_i18n/ar/resources/developer-guides/daemon-rpc.md b/_i18n/ar/resources/developer-guides/daemon-rpc.md new file mode 100644 index 00000000..6ae0b7d8 --- /dev/null +++ b/_i18n/ar/resources/developer-guides/daemon-rpc.md @@ -0,0 +1,2424 @@ +{% include untranslated.html %} +## Introduction + +This is a list of the monerod daemon RPC calls, their inputs and outputs, and examples of each. + +Many RPC calls use the daemon's JSON RPC interface while others use their own interfaces, as demonstrated below. + +Note: "@atomic-units" refer to the smallest fraction of 1 XMR according to the monerod implementation. **1 XMR = 1e12 @atomic-units.** + +Note2: Guide updated as of network height of 1,562,465. + +### [JSON RPC Methods](#json-rpc-methods): + +* [get_block_count](#get_block_count) +* [on_get_block_hash](#on_get_block_hash) +* [get_block_template](#get_block_template) +* [submit_block](#submit_block) +* [get_last_block_header](#get_last_block_header) +* [get_block_header_by_hash](#get_block_header_by_hash) +* [get_block_header_by_height](#get_block_header_by_height) +* [get_block_headers_range](#get_block_headers_range) +* [get_block](#get_block) +* [get_connections](#get_connections) +* [get_info](#get_info) +* [hard_fork_info](#hard_fork_info) +* [set_bans](#set_bans) +* [get_bans](#get_bans) +* [flush_txpool](#flush_txpool) +* [get_output_histogram](#get_output_histogram) +* [get_version](#get_version) +* [get_coinbase_tx_sum](#get_coinbase_tx_sum) +* [get_fee_estimate](#get_fee_estimate) +* [get_alternate_chains](#get_alternate_chains) +* [relay_tx](#relay_tx) +* [sync_info](#sync_info) +* [get_txpool_backlog](#get_txpool_backlog) +* [get_output_distribution](#get_output_distribution) + +### [Other RPC Methods](#other-daemon-rpc-calls): + +* [/get_height](#get_height) +* [/get_blocks.bin](#get_blocksbin) +* [/get_blocks_by_height.bin](#get_blocks_by_heightbin) +* [/get_hashes.bin](#get_hashesbin) +* [/get_o_indexes.bin](#get_o_indexesbin) +* [/get_random_outs.bin](#get_random_outsbin) +* [/get_outs.bin](#get_outsbin) +* [/get_random_rctouts.bin](#get_random_rctoutsbin) +* [/get_transactions](#get_transactions) +* [/get_alt_blocks_hashes](#get_alt_blocks_hashes) +* [/is_key_image_spent](#is_key_image_spent) +* [/send_raw_transaction](#send_raw_transaction) +* [/start_mining](#start_mining) +* [/stop_mining](#stop_mining) +* [/mining_status](#mining_status) +* [/save_bc](#save_bc) +* [/get_peer_list](#get_peer_list) +* [/set_log_hash_rate](#set_log_hash_rate) +* [/set_log_level](#set_log_level) +* [/set_log_categories](#set_log_categories) +* [/get_transaction_pool](#get_transaction_pool) +* [/get_transaction_pool_hashes.bin](#get_transaction_pool_hashesbin) +* [/get_transaction_pool_stats](#get_transaction_pool_stats) +* [/stop_daemon](#stop_daemon) +* [/get_info (not JSON)](#get_info-not-json) +* [/get_limit](#get_limit) +* [/set_limit](#set_limit) +* [/out_peers](#out_peers) +* [/in_peers](#in_peers) +* [/start_save_graph](#start_save_graph) +* [/stop_save_graph](#stop_save_graph) +* [/get_outs](#get_outs) +* [/update](#update) + + +--- + +## JSON RPC Methods + +The majority of monerod RPC calls use the daemon's `json_rpc` interface to request various bits of information. These methods all follow a similar structure, for example: + +``` +IP=127.0.0.1 +PORT=18081 +METHOD='get_block_header_by_height' +ALIAS='getblockheaderbyheight' +PARAMS='{"height":912345}' +curl \ + -X POST http://$IP:$PORT/json_rpc \ + -d '{"jsonrpc":"2.0","id":"0","method":"'$METHOD'","params":'$PARAMS'}' \ + -H 'Content-Type: application/json' +``` + +Some methods include parameters, while others do not. Examples of each JSON RPC method follow. + +### **get_block_count** + +Look up how many blocks are in the longest chain known to the node. + +Alias: *getblockcount*. + +Inputs: *None*. + +Outputs: + +* *count* - unsigned int; Number of blocks in longest chain seen by the node. +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_block_count"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "count": 993163, + "status": "OK" + } +} +``` + + +### **on_get_block_hash** + +Look up a block's hash by its height. + +Alias: *on_getblockhash*. + +Inputs: + +* block height (int array of length 1) + +Outputs: + +* block hash (string) + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"on_get_block_hash","params":[912345]}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": "e22cf75f39ae720e8b71b3d120a5ac03f0db50bba6379e2850975b4859190bc6" +} +``` + + +### **get_block_template** + +Get a block template on which mining a new block. + +Alias: *getblocktemplate*. + +Inputs: + +* *wallet_address* - string; Address of wallet to receive coinbase transactions if block is successfully mined. +* *reserve_size* - unsigned int; Reserve size. + +Outputs: + +* *blocktemplate_blob* - string; Blob on which to try to mine a new block. +* *blockhashing_blob* - string; Blob on which to try to find a valid nonce. +* *difficulty* - unsigned int; Difficulty of next block. +* *expected_reward* - unsigned int; Coinbase reward expected to be received if block is successfully mined. +* *height* - unsigned int; Height on which to mine. +* *prev_hash* - string; Hash of the most recent block on which to mine the next block. +* *reserved_offset* - unsigned int; Reserved offset. +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_block_template","params":{"wallet_address":"44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns","reserve_size":60}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "blockhashing_blob": "070786a498d705f8dc58791266179087907a2ff4cd883615216749b97d2f12173171c725a6f84a00000000fc751ea4a94c2f840751eaa36138eee66dda15ef554e7d6594395827994e31da10", + "blocktemplate_blob": "070786a498d705f8dc58791266179087907a2ff4cd883615216749b97d2f12173171c725a6f84a0000000002aeab5f01fff2aa5f01e0a9d0f2f08a01028fdb3d5b5a2c363d36ea17a4add99a23a3ec7935b4c3e1e0364fcc4295c7a2ef5f01f912b15f5d17c1539d4722f79d8856d8654c5af87f54cfb3a4ff7f6b512b2a08023c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1755090c809421d69873c161e7969b8bf33cee3b451dd4859bfc244a705f0b4900498f804b6023e13fa023a0fb759e8b7c9a39506a21442bc47077beeedc6b78d34c4ebdae91bd96097ccc9a882bc5056568b0d2f1f06559368fea4acba8e745444e883e53156d5083c1fd260edf05292934c8b40c098b81fe4e261720bdd272b209e317247a1d2c55dc4718891af0d16273c5a610f36f382a3bf50f54808aaa6a508e51d4601dd0d8fbf8b3b1685066ce121666a1409e8ac7a4d673c1cc36d10b825f764af647441f53230518e4d2efbcf8791c6060912c76e90db4982a66d51bbd96290bbb34db8080b216c2940cec407260bf5e2c3a5ee280835f15298f0801e9d98c4d414792282fbc2c28c3e20bc0fcb1829b5c3ad8f8d20847be8fdb2a949fd96f0205fbd6d271c880c5d8c83e9813606cd803a44d377fdeae45bfa67112132af601e9b3b0613ba7dff2ec3d4b935c447b47bfe39f7b950981b2f4c66c0d853e2218f1f69229a9b608c3d98be09b6d4d640a9f6ff0e920dbacf7e58b59554c0b398b1ae4b1d497104b4e4e745d850eed7eddb8aa93437427bf442ae5beb22cbf10a8fa738ea38cfa5d86dfd30675d4be11a38016e36936fd5601e52643e8b8bc433702ea7ae6149309c95b898cc854850e73fe0b95c5b8879b7325ecd4", + "difficulty": 61043624293, + "expected_reward": 4771949057248, + "height": 1561970, + "prev_hash": "f8dc58791266179087907a2ff4cd883615216749b97d2f12173171c725a6f84a", + "reserved_offset": 129, + "status": "OK", + "untrusted": false + } +} +``` + + +### **submit_block** + +Submit a mined block to the network. + +Alias: *submitblock*. + +Inputs: + +* Block blob data - string + +Outputs: + +* *status* - string; Block submit status. + + +### **get_last_block_header** + +Block header information for the most recent block is easily retrieved with this method. No inputs are needed. + +Alias: *getlastblockheader*. + +Inputs: *None*. + +Outputs: + +* *block_header* - A structure containing block header information. + * *block_size* - unsigned int; The block size in bytes. + * *depth* - unsigned int; The number of blocks succeeding this block on the blockchain. A larger number means an older block. + * *difficulty* - unsigned int; The strength of the Monero network based on mining power. + * *hash* - string; The hash of this block. + * *height* - unsigned int; The number of blocks preceding this block on the blockchain. + * *major_version* - unsigned int; The major version of the monero protocol at this block height. + * *minor_version* - unsigned int; The minor version of the monero protocol at this block height. + * *nonce* - unsigned int; a cryptographic random one-time number used in mining a Monero block. + * *num_txes* - unsigned int; Number of transactions in the block, not counting the coinbase tx. + * *orphan_status* - boolean; Usually `false`. If `true`, this block is not part of the longest chain. + * *prev_hash* - string; The hash of the block immediately preceding this block in the chain. + * *reward* - unsigned int; The amount of new @atomic-units generated in this block and rewarded to the miner. Note: 1 XMR = 1e12 @atomic-units. + * *timestamp* - unsigned int; The unix time at which the block was recorded into the blockchain. +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +In this example, the most recent block (1562023 at the time) is returned: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_last_block_header"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "block_header": { + "block_size": 62774, + "depth": 0, + "difficulty": 60097900840, + "hash": "3a289b8fa88b10e2163826c230b45d79f2be37d14fa3153ee58ff8a427782d14", + "height": 1562023, + "major_version": 7, + "minor_version": 7, + "nonce": 3789681204, + "num_txes": 5, + "orphan_status": false, + "prev_hash": "743e5d0a26849efe27b96086f2c4ecc39a0bc744bf21473dad6710221aff6ac3", + "reward": 4724029079703, + "timestamp": 1525029411 + }, + "status": "OK", + "untrusted": false + } +} +``` + + +### **get_block_header_by_hash** + +Block header information can be retrieved using either a block's hash or height. This method includes a block's hash as an input parameter to retrieve basic information about the block. + +Alias: *getblockheaderbyhash*. + +Inputs: + +* *hash* - string; The block's sha256 hash. + +Outputs: + +* *block_header* - A structure containing block header information. See [get_last_block_header](#get_last_block_header). +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +In this example, block 912345 is looked up by its hash: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_block_header_by_hash","params":{"hash":"e22cf75f39ae720e8b71b3d120a5ac03f0db50bba6379e2850975b4859190bc6"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "block_header": { + "block_size": 210, + "depth": 649717, + "difficulty": 815625611, + "hash": "e22cf75f39ae720e8b71b3d120a5ac03f0db50bba6379e2850975b4859190bc6", + "height": 912345, + "major_version": 1, + "minor_version": 2, + "nonce": 1646, + "num_txes": 0, + "orphan_status": false, + "prev_hash": "b61c58b2e0be53fad5ef9d9731a55e8a81d972b8d90ed07c04fd37ca6403ff78", + "reward": 7388968946286, + "timestamp": 1452793716 + }, + "status": "OK", + "untrusted": false + } +} +``` + + +### **get_block_header_by_height** + +Similar to [get_block_header_by_hash](#get_block_header_by_hash) above, this method includes a block's height as an input parameter to retrieve basic information about the block. + +Alias: *getblockheaderbyheight*. + +Inputs: + +* *height* - unsigned int; The block's height. + +Outputs: + +* *block_header* - A structure containing block header information. See [get_last_block_header](#get_last_block_header). +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +In this example, block 912345 is looked up by its height (notice that the returned information is the same as in the previous example): + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_block_header_by_height","params":{"height":912345}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "block_header": { + "block_size": 210, + "depth": 649721, + "difficulty": 815625611, + "hash": "e22cf75f39ae720e8b71b3d120a5ac03f0db50bba6379e2850975b4859190bc6", + "height": 912345, + "major_version": 1, + "minor_version": 2, + "nonce": 1646, + "num_txes": 0, + "orphan_status": false, + "prev_hash": "b61c58b2e0be53fad5ef9d9731a55e8a81d972b8d90ed07c04fd37ca6403ff78", + "reward": 7388968946286, + "timestamp": 1452793716 + }, + "status": "OK", + "untrusted": false + } +} +``` + +### **get_block_headers_range** + +Similar to [get_block_header_by_height](#get_block_header_by_height) above, but for a range of blocks. This method includes a starting block height and an ending block height as parameters to retrieve basic information about the range of blocks. + +Alias: *getblockheadersrange*. + +Inputs: + +* *start_height* - unsigned int; The starting block's height. +* *end_height* - unsigned int; The ending block's height. + +Outputs: + +* *headers* - array of `block_header` (a structure containing block header information. See [get_last_block_header](#get_last_block_header)). +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +In this example, blocks range from height 1545999 to 1546000 is looked up (notice that the returned informations are ascending order and that it is at the April 2018 network upgrade time): + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_block_headers_range","params":{"start_height":1545999,"end_height":1546000}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "headers": [{ + "block_size": 301413, + "depth": 16085, + "difficulty": 134636057921, + "hash": "86d1d20a40cefcf3dd410ff6967e0491613b77bf73ea8f1bf2e335cf9cf7d57a", + "height": 1545999, + "major_version": 6, + "minor_version": 6, + "nonce": 3246403956, + "num_txes": 20, + "orphan_status": false, + "prev_hash": "0ef6e948f77b8f8806621003f5de24b1bcbea150bc0e376835aea099674a5db5", + "reward": 5025593029981, + "timestamp": 1523002893 + },{ + "block_size": 13322, + "depth": 16084, + "difficulty": 134716086238, + "hash": "b408bf4cfcd7de13e7e370c84b8314c85b24f0ba4093ca1d6eeb30b35e34e91a", + "height": 1546000, + "major_version": 7, + "minor_version": 7, + "nonce": 3737164176, + "num_txes": 1, + "orphan_status": false, + "prev_hash": "86d1d20a40cefcf3dd410ff6967e0491613b77bf73ea8f1bf2e335cf9cf7d57a", + "reward": 4851952181070, + "timestamp": 1523002931 + }], + "status": "OK", + "untrusted": false + } +} +``` + + +### **get_block** + +Full block information can be retrieved by either block height or hash, like with the above block header calls. For full block information, both lookups use the same method, but with different input parameters. + +Alias: *getblock*. + +Inputs (pick one of the following): + +* *height* - unsigned int; The block's height. +* *hash* - string; The block's hash. + +Outputs: + +* *blob* - string; Hexadecimal blob of block information. +* *block_header* - A structure containing block header information. See [get_last_block_header](#get_last_block_header). +* *json* - json string; JSON formatted block details: + * *major_version* - Same as in block header. + * *minor_version* - Same as in block header. + * *timestamp* - Same as in block header. + * *prev_id* - Same as `prev_hash` in block header. + * *nonce* - Same as in block header. + * *miner_tx* - Miner transaction information + * *version* - Transaction version number. + * *unlock_time* - The block height when the coinbase transaction becomes spendable. + * *vin* - List of transaction inputs: + * *gen* - Miner txs are coinbase txs, or "gen". + * *height* - This block height, a.k.a. when the coinbase is generated. + * *vout* - List of transaction outputs. Each output contains: + * *amount* - The amount of the output, in @atomic-units. + * *target* - + * *key* - + * *extra* - Usually called the "transaction ID" but can be used to include any random 32 byte/64 character hex string. + * *signatures* - Contain signatures of tx signers. Coinbased txs do not have signatures. + * *tx_hashes* - List of hashes of non-coinbase transactions in the block. If there are no other transactions, this will be an empty list. +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +**Look up by height:** + +In the following example, block 912345 is looked up by its height. Note that block 912345 does not have any non-coinbase transactions. (See the next example for a block with extra transactions): + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_block","params":{"height":912345}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "blob": "0102f4bedfb405b61c58b2e0be53fad5ef9d9731a55e8a81d972b8d90ed07c04fd37ca6403ff786e0600000195d83701ffd9d73704ee84ddb42102378b043c1724c92c69d923d266fe86477d3a5ddd21145062e148c64c5767700880c0fc82aa020273733cbd6e6218bda671596462a4b062f95cfe5e1dbb5b990dacb30e827d02f280f092cbdd080247a5dab669770da69a860acde21616a119818e1a489bb3c4b1b6b3c50547bc0c80e08d84ddcb01021f7e4762b8b755e3e3c72b8610cc87b9bc25d1f0a87c0c816ebb952e4f8aff3d2b01fd0a778957f4f3103a838afda488c3cdadf2697b3d34ad71234282b2fad9100e02080000000bdfc2c16c00", + "block_header": { + "block_size": 210, + "depth": 649772, + "difficulty": 815625611, + "hash": "e22cf75f39ae720e8b71b3d120a5ac03f0db50bba6379e2850975b4859190bc6", + "height": 912345, + "major_version": 1, + "minor_version": 2, + "nonce": 1646, + "num_txes": 0, + "orphan_status": false, + "prev_hash": "b61c58b2e0be53fad5ef9d9731a55e8a81d972b8d90ed07c04fd37ca6403ff78", + "reward": 7388968946286, + "timestamp": 1452793716 + }, + "json": "{\n \"major_version\": 1, \n \"minor_version\": 2, \n \"timestamp\": 1452793716, \n \"prev_id\": \"b61c58b2e0be53fad5ef9d9731a55e8a81d972b8d90ed07c04fd37ca6403ff78\", \n \"nonce\": 1646, \n \"miner_tx\": {\n \"version\": 1, \n \"unlock_time\": 912405, \n \"vin\": [ {\n \"gen\": {\n \"height\": 912345\n }\n }\n ], \n \"vout\": [ {\n \"amount\": 8968946286, \n \"target\": {\n \"key\": \"378b043c1724c92c69d923d266fe86477d3a5ddd21145062e148c64c57677008\"\n }\n }, {\n \"amount\": 80000000000, \n \"target\": {\n \"key\": \"73733cbd6e6218bda671596462a4b062f95cfe5e1dbb5b990dacb30e827d02f2\"\n }\n }, {\n \"amount\": 300000000000, \n \"target\": {\n \"key\": \"47a5dab669770da69a860acde21616a119818e1a489bb3c4b1b6b3c50547bc0c\"\n }\n }, {\n \"amount\": 7000000000000, \n \"target\": {\n \"key\": \"1f7e4762b8b755e3e3c72b8610cc87b9bc25d1f0a87c0c816ebb952e4f8aff3d\"\n }\n }\n ], \n \"extra\": [ 1, 253, 10, 119, 137, 87, 244, 243, 16, 58, 131, 138, 253, 164, 136, 195, 205, 173, 242, 105, 123, 61, 52, 173, 113, 35, 66, 130, 178, 250, 217, 16, 14, 2, 8, 0, 0, 0, 11, 223, 194, 193, 108\n ], \n \"signatures\": [ ]\n }, \n \"tx_hashes\": [ ]\n}", + "miner_tx_hash": "c7da3965f25c19b8eb7dd8db48dcd4e7c885e2491db77e289f0609bf8e08ec30", + "status": "OK", + "untrusted": false + } +} +``` + +**Look up by hash:** + +In the following example, block 993056 is looked up by its hash. Note that block 993056 has 3 non-coinbase transactions: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_block","params":{"hash":"510ee3c4e14330a7b96e883c323a60ebd1b5556ac1262d0bc03c24a3b785516f"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "blob": "0102a3978cb7050ea4af6547c05c965afc8df6d31509ff3105dc7ae6b10172521d77e09711fd6df407000001dcce3c01ffa0ce3c049da8bece070259e9d685b3484886bc7b47c133e6099ecdf212d5eaa16ce19cd58e8c3c1e590a80d88ee16f024c5e2f542d25513c46b9e3b7d40140a22d0ae5314bfcae492ad9f56fff8185f080d0b8e1981a0213dd8ffdac9e6a2f71e327dad65328198dc879a492d145eae72677c0703a351580c0f9decfae010262bda00341681dccbc066757862da593734395745bdfe1fdc89b5948c86a5d4c2b01b691851cf057b9c302a3dbca879e1cba4cc45061ca55aaa6e03cdc67ab9e455002080000000c617fdf160379c6b9f00db027bde151705aafe85c495883aae2597d5cb8e1adb2e0f3ae1d07d715db73331abc3ec588ef07c7bb195786a4724b08dff431b51ffa32a4ce899bb197066426c0ed89f0b431fe171f7fd62bc95dd29943daa7cf3585cf1fdfc99d", + "block_header": { + "block_size": 3981, + "depth": 569068, + "difficulty": 964985344, + "hash": "510ee3c4e14330a7b96e883c323a60ebd1b5556ac1262d0bc03c24a3b785516f", + "height": 993056, + "major_version": 1, + "minor_version": 2, + "nonce": 2036, + "num_txes": 3, + "orphan_status": false, + "prev_hash": "0ea4af6547c05c965afc8df6d31509ff3105dc7ae6b10172521d77e09711fd6d", + "reward": 6932043647005, + "timestamp": 1457720227 + }, + "json": "{\n \"major_version\": 1, \n \"minor_version\": 2, \n \"timestamp\": 1457720227, \n \"prev_id\": \"0ea4af6547c05c965afc8df6d31509ff3105dc7ae6b10172521d77e09711fd6d\", \n \"nonce\": 2036, \n \"miner_tx\": {\n \"version\": 1, \n \"unlock_time\": 993116, \n \"vin\": [ {\n \"gen\": {\n \"height\": 993056\n }\n }\n ], \n \"vout\": [ {\n \"amount\": 2043647005, \n \"target\": {\n \"key\": \"59e9d685b3484886bc7b47c133e6099ecdf212d5eaa16ce19cd58e8c3c1e590a\"\n }\n }, {\n \"amount\": 30000000000, \n \"target\": {\n \"key\": \"4c5e2f542d25513c46b9e3b7d40140a22d0ae5314bfcae492ad9f56fff8185f0\"\n }\n }, {\n \"amount\": 900000000000, \n \"target\": {\n \"key\": \"13dd8ffdac9e6a2f71e327dad65328198dc879a492d145eae72677c0703a3515\"\n }\n }, {\n \"amount\": 6000000000000, \n \"target\": {\n \"key\": \"62bda00341681dccbc066757862da593734395745bdfe1fdc89b5948c86a5d4c\"\n }\n }\n ], \n \"extra\": [ 1, 182, 145, 133, 28, 240, 87, 185, 195, 2, 163, 219, 202, 135, 158, 28, 186, 76, 196, 80, 97, 202, 85, 170, 166, 224, 60, 220, 103, 171, 158, 69, 80, 2, 8, 0, 0, 0, 12, 97, 127, 223, 22\n ], \n \"signatures\": [ ]\n }, \n \"tx_hashes\": [ \"79c6b9f00db027bde151705aafe85c495883aae2597d5cb8e1adb2e0f3ae1d07\", \"d715db73331abc3ec588ef07c7bb195786a4724b08dff431b51ffa32a4ce899b\", \"b197066426c0ed89f0b431fe171f7fd62bc95dd29943daa7cf3585cf1fdfc99d\"\n ]\n}", + "miner_tx_hash": "372395aeac5e5ad2c40b4c546b0bad00c4242fb2bd88e2e25f4e43231876f81e", + "status": "OK", + "tx_hashes": ["79c6b9f00db027bde151705aafe85c495883aae2597d5cb8e1adb2e0f3ae1d07","d715db73331abc3ec588ef07c7bb195786a4724b08dff431b51ffa32a4ce899b","b197066426c0ed89f0b431fe171f7fd62bc95dd29943daa7cf3585cf1fdfc99d"], + "untrusted": false + } +} +``` + + +### **get_connections** + +Retrieve information about incoming and outgoing connections to your node. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *connections* - List of all connections and their info: + * *address* - string; The peer's address, actually IPv4 & port + * *avg_download* - unsigned int; Average bytes of data downloaded by node. + * *avg_upload* - unsigned int; Average bytes of data uploaded by node. + * *connection_id* - string; The connection ID + * *current_download* - unsigned int; Current bytes downloaded by node. + * *current_upload* - unsigned int; Current bytes uploaded by node. + * *height*- unsigned int; The peer height + * *host* - string; The peer host + * *incoming* - boolean; Is the node getting information from your node? + * *ip* - string; The node's IP address. + * *live_time* - unsigned int + * *local_ip* - boolean + * *localhost* - boolean + * *peer_id* - string; The node's ID on the network. + * *port* - string; The port that the node is using to connect to the network. + * *recv_count* - unsigned int + * *recv_idle_time* - unsigned int + * *send_count* - unsigned int + * *send_idle_time* - unsigned int + * *state* - string + * *support_flags* - unsigned int + +Following is an example of `get_connections` and it's return: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_connections"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "connections": [{ + "address": "173.90.69.136:62950", + "avg_download": 0, + "avg_upload": 2, + "connection_id": "083c301a3030329a487adb12ad981d2c", + "current_download": 0, + "current_upload": 2, + "height": 1562127, + "host": "173.90.69.136", + "incoming": true, + "ip": "173.90.69.136", + "live_time": 8, + "local_ip": false, + "localhost": false, + "peer_id": "c959fbfbed9e44fb", + "port": "62950", + "recv_count": 259, + "recv_idle_time": 8, + "send_count": 24342, + "send_idle_time": 8, + "state": "state_normal", + "support_flags": 0 + },{ + ... + }], + "status": "OK" + } +} +``` + + +### **get_info** + +Retrieve general information about the state of your node and the network. + +Alias: + +* */get_info* +* */getinfo* + +See other RPC Methods [/get_info (not JSON)](#get_info-not-json) + +Inputs: *None*. + +Outputs: + +* *alt_blocks_count* - unsigned int; Number of alternative blocks to main chain. +* *block_size_limit* - unsigned int; Maximum allowed block size +* *block_size_median* - unsigned int; Median block size of latest 100 blocks +* *bootstrap_daemon_address* - string; @Bootstrap-node to give immediate usability to wallets while syncing by proxying RPC to it. (Note: the replies may be untrustworthy). +* *cumulative_difficulty* - unsigned int; Cumulative difficulty of all blocks in the blockchain. +* *difficulty* - unsigned int; Network difficulty (analogous to the strength of the network) +* *free_space* - unsigned int; Available disk space on the node. +* *grey_peerlist_size* - unsigned int; Grey Peerlist Size +* *height* - unsigned int; Current length of longest chain known to daemon. +* *height_without_bootstrap* - unsigned int; Current length of the local chain of the daemon. +* *incoming_connections_count* - unsigned int; Number of peers connected to and pulling from your node. +* *mainnet* - boolean; States if the node is on the mainnet (`true`) or not (`false`). +* *offline* - boolean; States if the node is offline (`true`) or online (`false`). +* *outgoing_connections_count* - unsigned int; Number of peers that you are connected to and getting information from. +* *rpc_connections_count* - unsigned int; Number of RPC client connected to the daemon (Including this RPC request). +* *stagenet* - boolean; States if the node is on the stagenet (`true`) or not (`false`). +* *start_time* - unsigned int; Start time of the daemon, as UNIX time. +* *status* - string; General RPC error code. "OK" means everything looks good. +* *target* - unsigned int; Current target for next proof of work. +* *target_height* - unsigned int; The height of the next block in the chain. +* *testnet* - boolean; States if the node is on the testnet (`true`) or not (`false`). +* *top_block_hash* - string; Hash of the highest block in the chain. +* *tx_count* - unsigned int; Total number of non-coinbase transaction in the chain. +* *tx_pool_size* - unsigned int; Number of transactions that have been broadcast but not included in a block. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). +* *was_bootstrap_ever_used* - boolean; States if a bootstrap node has ever been used since the daemon started. +* *white_peerlist_size* - unsigned int; White Peerlist Size + +Following is an example `get_info` call and its return: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_info"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "alt_blocks_count": 6, + "block_size_limit": 600000, + "block_size_median": 129017, + "bootstrap_daemon_address": "", + "cumulative_difficulty": 14121125493385685, + "difficulty": 60580751777, + "free_space": 138758750208, + "grey_peerlist_size": 4998, + "height": 1562168, + "height_without_bootstrap": 1562168, + "incoming_connections_count": 2, + "mainnet": true, + "offline": false, + "outgoing_connections_count": 8, + "rpc_connections_count": 2, + "stagenet": false, + "start_time": 1524751757, + "status": "OK", + "target": 120, + "target_height": 1562063, + "testnet": false, + "top_block_hash": "7a7ba647080844073fdd8e3a069e00554c773d6e6863354dba1dec45a43f5592", + "tx_count": 2759894, + "tx_pool_size": 755, + "untrusted": false, + "was_bootstrap_ever_used": false, + "white_peerlist_size": 1000 + } +} +``` + + +### **hard_fork_info** + +Look up information regarding hard fork voting and readiness. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *earliest_height* - unsigned int; Block height at which hard fork would be enabled if voted in. +* *enabled* - boolean; Tells if hard fork is enforced. +* *state* - unsigned int; Current hard fork state: 0 (There is likely a hard fork), 1 (An update is needed to fork properly), or 2 (Everything looks good). +* *status* - string; General RPC error code. "OK" means everything looks good. +* *threshold* - unsigned int; Minimum percent of votes to trigger hard fork. Default is 80. +* *version* - unsigned int; The major block version for the fork. +* *votes* - unsigned int; Number of votes towards hard fork. +* *voting* - unsigned int; Hard fork voting status. +* *window* - unsigned int; Number of blocks over which current votes are cast. Default is 10080 blocks. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"hard_fork_info"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "earliest_height": 1009827, + "enabled": false, + "state": 2, + "status": "OK", + "threshold": 0, + "version": 1, + "votes": 7277, + "voting": 2, + "window": 10080 + } +} +``` + + +### **set_bans** + +Ban another node by IP. + +Alias: *None*. + +Inputs: + +* *bans* - A list of nodes to ban: + * *host* - string; Host to ban (IP in A.B.C.D form - will support I2P address in the future). + * *ip* - unsigned int; IP address to ban, in Int format. + * *ban* - boolean; Set `true` to ban. + * *seconds* - unsigned int; Number of seconds to ban node. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. + +Examples: + +**banning by host** + +In the following example, host is banned with its IP address string-formatted as A.B.C.D: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"set_bans","params":{"bans":[{"host":"192.168.1.51","ban":true,"seconds":30}]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "status": "OK" + } +} +``` + +**banning by ip** + +In the following example, integer-formatted IP is banned: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"set_bans","params":{"bans":[{"ip":838969536,"ban":true,"seconds":30}]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "status": "OK" + } +} +``` + + +### **get_bans** + +Get list of banned IPs. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *bans* - List of banned nodes: + * *host* - string; Banned host (IP in A.B.C.D form). + * *ip* - unsigned int; Banned IP address, in Int format. + * *seconds* - unsigned int; Local Unix time that IP is banned until. +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_bans"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "bans": [{ + "host": "102.168.1.51", + "ip": 855746662, + "seconds": 22 + },{ + "host": "192.168.1.50", + "ip": 838969536, + "seconds": 28 + }], + "status": "OK" + } +} +``` + + +### **flush_txpool** + +Flush tx ids from transaction pool + +Alias: *None*. + +Inputs: + +* *txids* - array of strings; Optional, list of transactions IDs to flush from pool (all tx ids flushed if empty). + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"flush_txpool","params":{"txids":["dc16fa8eaffe1484ca9014ea050e13131d3acf23b419f33bb4cc0b32b6c49308",""]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "status": "OK" + } +} +``` + +### **get_output_histogram** + +Get a histogram of output amounts. For all amounts (possibly filtered by parameters), gives the number of outputs on the chain for that amount. +RingCT outputs counts as 0 amount. + +Inputs: + +* *amounts* - list of unsigned int +* *min_count* - unsigned int +* *max_count* - unsigned int +* *unlocked* - boolean +* *recent_cutoff* - unsigned int + +Outputs: + +* *histogram* - list of histogram entries, in the following structure: + * *amount* - unsigned int; Output amount in @atomic-units + * *total_instances* - unsigned int; + * *unlocked_instances* - unsigned int; + * *recent_instances* - unsigned int; +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_output_histogram","params":{"amounts":[20000000000]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "histogram": [{ + "amount": 20000000000, + "recent_instances": 0, + "total_instances": 381458, + "unlocked_instances": 0 + }], + "status": "OK", + "untrusted": false + } +} +``` + + +### **get_coinbase_tx_sum** + +Get the coinbase ammount and the fees ammount for n last blocks starting at particular height + +Alias: *None*. + +Inputs: + +* *height* - unsigned int; Block height from which getting the amounts +* *count* - unsigned int; number of blocks to include in the sum + +Outputs: + +* *emission_amount* - unsigned int; amount of coinbase reward in @atomic-units +* *fee_amount* - unsigned int; amount of fees in @atomic-units +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_coinbase_tx_sum","params":{"height":1563078,"count":2}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "emission_amount": 9387854817320, + "fee_amount": 83981380000, + "status": "OK" + } +} +``` + + +### **get_version** + +Give the node current version + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). +* *version* - unsigned int; + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_version"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "status": "OK", + "untrusted": false, + "version": 65555 + } +} +``` + + +### **get_fee_estimate** + +Gives an estimation on fees per kB. + +Alias: *None*. + +Inputs: + +* *grace_blocks* - unsigned int; Optional + +Outputs: + +* *fee* - unsigned int; Amount of fees estimated per kB in @atomic-units +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_fee_estimate"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "fee": 187610000, + "status": "OK", + "untrusted": false + } +} +``` + + +### **get_alternate_chains** + +Display alternative chains seen by the node. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *chains* - array of chains, the following structure: + * *block_hash* - string; the block hash of the first diverging block of this alternative chain. + * *difficulty* - unsigned int; the cumulative difficulty of all blocks in the alternative chain. + * *height* - unsigned int; the block height of the first diverging block of this alternative chain. + * *length* - unsigned int; the length in blocks of this alternative chain, after divergence. +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_alternate_chains"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "chains": [{ + "block_hash": "697cf03c89a9b118f7bdf11b1b3a6a028d7b3617d2d0ed91322c5709acf75625", + "difficulty": 14114729638300280, + "height": 1562062, + "length": 2 + }], + "status": "OK" + } +} +``` + + +### **relay_tx** + +Relay a list of transaction IDs. + +Alias: *None*. + +Inputs: + +* *txids* - array of string; list of transaction IDs to relay + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"relay_tx","params":{"txids":[9fd75c429cbe52da9a52f2ffc5fbd107fe7fd2099c0d8de274dc8a67e0c98613]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "status": "OK" + } +} +``` + + +### **sync_info** + +Get synchronisation informations + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *height* - unsigned int; +* *peers* - array of peer structure, defined as follows: + * *info* - structure of connection info, as defined in [get_connections](#get_connections) +* *spans* - array of span structure, defined as follows (optional, absent if node is fully synced): + * *connection_id* - string; Id of connection + * *nblocks* - unsigned int; number of blocks in that span + * *rate* - unsigned int; connection rate + * *remote_address* - string; peer address the node is downloading (or has downloaded) than span from + * *size* - unsigned int; total number of bytes in that span's blocks (including txes) + * *speed* - unsigned int; connection speed + * *start_block_height* - unsigned int; block height of the first block in that span +* *status* - string; General RPC error code. "OK" means everything looks good. +* *target_height* - unsigned int; target height the node is syncing from (optional, absent if node is fully synced) + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"sync_info"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "height": 1563543, + "peers": [{ + "info": { + "address": "70.109.53.128:60064", + "avg_download": 0, + "avg_upload": 5, + "connection_id": "204067223b9b3415c265dd25ad29ee48", + "current_download": 0, + "current_upload": 1, + "height": 1559975, + "host": "70.109.53.128", + "incoming": true, + "ip": "70.109.53.128", + "live_time": 38, + "local_ip": false, + "localhost": false, + "peer_id": "96b8545dbc7a8866", + "port": "60064", + "recv_count": 1580, + "recv_idle_time": 28, + "send_count": 203603, + "send_idle_time": 8, + "state": "state_normal", + "support_flags": 1 + } + },{ + "info": { + ... + } + },{ + ... + },{ + ... + },{ + ... + }], + "status": "OK", + "target_height": 1564067 + } +} +``` + + +### **get_txpool_backlog** + +Get all transaction pool backlog + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *backlog*: array of structures *tx_backlog_entry* (in binary form): + * *blob_size* - unsigned int (in binary form) + * *fee* - unsigned int (in binary form) + * *time_in_pool* - unsigned int (in binary form) +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_txpool_backlog"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "backlog": "...Binary...", + "status": "OK", + "untrusted": false + } +} +``` + + +### **get_output_distribution** + + + +Alias: *None*. + +Inputs: + +* *amounts* - array of unsigned int; amounts to look for +* *cumulative* - boolean; (optional, default is `false`) States if the result should be cumulative (`true`) or not (`false`) +* *from_height* - unsigned int; (optional, default is 0) starting height to check from +* *to_height* - unsigned int; (optional, default is 0) ending height to check up to + +Outputs: + +* *distributions* - array of structure distribution as follows: + * *amount* - unsigned int + * *base* - unsigned int + * *distribution* - array of unsigned int + * *start_height* - unsigned int +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_output_distribution","params":{"amounts":[628780000],"from_height":1462078}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "distributions": [{ + "amount": 2628780000, + "base": 0, + "distribution": "", + "start_height": 1462078 + }], + "status": "OK" + } +} +``` + + +--- + +## Other Daemon RPC Calls + +Not all daemon RPC calls use the JSON_RPC interface. This section gives examples of these calls. + +The data structure for these calls is different than the JSON RPC calls. Whereas the JSON RPC methods were called using the `/json_rpc` extension and specifying a method, these methods are called at their own extensions. For example: + + IP=127.0.0.1 + PORT=18081 + METHOD='gettransactions' + PARAMS='{"txs_hashes":["d6e48158472848e6687173a91ae6eebfa3e1d778e65252ee99d7515d63090408"]}' + curl \ + -X POST http://$IP:$PORT/$METHOD \ + -d $PARAMS \ + -H 'Content-Type: application/json' + +Note: It is recommended to use JSON RPC where such alternatives exist, rather than the following methods. For example, the recommended way to get a node's height is via the JSON RPC methods [get_info](#getinfo) or [get_last_block_header](#get_last_block_header), rather than [getheight](#getheight) below. + +For calls that end with **.bin**, the data is exchanged in the form of binary, serialized objects, as defined in the [Core RPC Server](https://github.com/monero-project/monero/blob/master/src/rpc/core_rpc_server_commands_defs.h). + + +### **/get_height** + +Get the node's current height. + +Alias: */getheight*. + +Inputs: *None*. + +Outputs: + +* *height* - unsigned int; Current length of longest chain known to daemon. +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +``` +$ curl -X POST http://127.0.0.1:18081/get_height -H 'Content-Type: application/json' + +{ + "height": 1564055, + "status": "OK", + "untrusted": false +} +``` + + + +### **/get_blocks.bin** + +Get all blocks info. Binary request. + +Alias: */getblocks.bin*. + +Inputs: + +* *block_ids* - binary array of hashes; first 10 blocks id goes sequential, next goes in pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block +* *start_height* - unsigned int +* *prune* - boolean + +Outputs: + +* *blocks* - array of block complete entries +* *current_height* - unsigned int +* *output_indices* - structure as follows: + * *indices* - array of tx output indices, structure as follows: + * *indices* - array of unsigned int +* *start_height* - unsigned int +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + + +### **/get_blocks_by_height.bin** + +Get blocks by height. Binary request. + +Alias: */getblocks_by_height.bin*. + +Inputs: + +* *heights* - array of unsigned int; list of block heights + +Outputs: + +* *blocks* - array of block complete entries +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + + + +### **/get_hashes.bin** + +Get hashes. Binary request. + +Alias: */gethashes.bin*. + +Inputs: + +* *block_ids* - binary array of hashes; first 10 blocks id goes sequential, next goes in pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block +* *start_height* - unsigned int + +Outputs: + +* *current_height* - unsigned int +* *m_block_ids* - binary array of hashes; see *block_ids* above. +* *start_height* - unsigned int +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + + + +### **/get_o_indexes.bin** + +Get global outputs of transactions. Binary request. + +Alias: *None*. + +Inputs: + +* *txid* - binary txid + +Outputs: + +* *o_indexes* - array of unsigned int; List of output indexes +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + + + +### **/get_random_outs.bin** + +Get a list of random outputs for a specific list of amounts. Binary request. + +Alias: */getrandom_outs.bin*. + +Inputs: + +* *amounts* - array of unsigned int; amounts to get random outputs for +* *outs_count* - unsigned int; Number of output to get + +Output: + +* *outs* - array of structure *outs_for_amount* as follows: + * *amount* - unsigned int; + * *outs* - array of structure *out_entry* as follows: + * *global_amount_index* - unsigned int; + * *out_key* - public key; +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + + + +### **/get_outs.bin** + +Get outputs. Binary request. + +Alias: *None*. + +Inputs: + +* *outputs* - array of structure *get_outputs_out* as follows: + * *amount* - unsigned int; + * *index* - unsigned int; + +Outputs: + +* *outs* - array of structure *outkey* as follows: + * *amount* - unsigned int; + * *height* - unsigned int; block height of the output + * *key* - the public key of the output + * *mask* + * *txid* - transaction id + * *unlocked* - boolean; States if output is locked (`false`) or not (`true`) +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + + + +### **/get_random_rctouts.bin** + +Get random RingCT outputs. Binary request. + +Alias: */getrandom_rctouts.bin*. + +Inputs: + +* *outs_count* - unsigned int; amount of RingCT output to get + +Outputs: + +* *outs* - array of structure *out_entry* as follows: + * *amount* - unsigned int; + * *commitment* - RingCT Key; + * *global_amount_index* - unsigned int; + * *out_key* - public key; +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + + + +### **/get_transactions** + +Look up one or more transactions by hash. + +Alias: */gettransactions*. + +Inputs: + +* *txs_hashes* - string list; List of transaction hashes to look up. +* *decode_as_json* - boolean; Optional (`false` by default). If set `true`, the returned transaction information will be decoded rather than binary. +* *prune* - boolean; Optional (`false` by default). + +Outputs: + +* *missed_tx* - array of strings. (Optional - returned if not empty) Transaction hashes that could not be found. +* *status* - General RPC error code. "OK" means everything looks good. +* *txs* - array of structure *entry* as follows: + * *as_hex* - string; Full transaction information as a hex string. + * *as_json* - json string; List of transaction info: + * *version* - Transaction version + * *unlock_time* - If not 0, this tells when a transaction output is spendable. + * *vin* - List of inputs into transaction: + * *key* - The public key of the previous output spent in this transaction. + * *amount* - The amount of the input, in @atomic-units. + * *key_offsets* - A list of integer offets to the input. + * *k_image* - The key image for the given input + * *vout* - List of outputs from transaction: + * *amount* - Amount of transaction output, in @atomic-units. + * *target* - Output destination information: + * *key* - The stealth public key of the receiver. Whoever owns the private key associated with this key controls this transaction output. + * *extra* - Usually called the "payment ID" but can be used to include any random 32 bytes. + * *signatures* - List of signatures used in ring signature to hide the true origin of the transaction. + * *block_height* - unsigned int; block height including the transaction + * *block_timestamp* - unsigned int; Unix time at chich the block has been added to the blockchain + * *double_spend_seen* - boolean; States if the transaction is a double-spend (`true`) or not (`false`) + * *in_pool* - boolean; States if the transaction is in pool (`true`) or included in a block (`false`) + * *output_indices* - array of unsigned int; transaction indexes + * *tx_hash* - string; transaction hash +* *txs_as_hex* - string; Full transaction information as a hex string (old compatibility parameter) +* *txs_as_json* - json string; (Optional - returned if set in inputs. Old compatibility parameter) List of transaction as in *as_json* above: + +Example 1: Return transaction information in binary format. + +``` +$ curl -X POST http://127.0.0.1:18081/get_transactions -d '{"txs_hashes":["d6e48158472848e6687173a91ae6eebfa3e1d778e65252ee99d7515d63090408"]}' -H 'Content-Type: application/json' + +{ + "status": "OK", + "txs": [{ + "as_hex": "...", + "as_json": "", + "block_height": 993442, + "block_timestamp": 1457749396, + "double_spend_seen": false, + "in_pool": false, + "output_indices": [198769,418598,176616,50345,509], + "tx_hash": "d6e48158472848e6687173a91ae6eebfa3e1d778e65252ee99d7515d63090408" + }], + "txs_as_hex": ["..."], + "untrusted": false +} +``` + +Example 2: Decode returned transaction information in JSON format. Note: the "vin", "vout" and "signatures" list have been truncated in the displayed return for space considerations. + +``` +$ curl -X POST http://127.0.0.1:18081/get_transactions -d '{"txs_hashes":["d6e48158472848e6687173a91ae6eebfa3e1d778e65252ee99d7515d63090408"],"decode_as_json":true}' -H 'Content-Type: application/json' + +{ + "status": "OK", + "txs": [{ + "as_hex": "...", + "as_json": "{\n \"version\": 1, \n \"unlock_time\": 0, \n \"vin\": [ {\n \"key\": {\n \"amount\": 9999999999, \n \"key_offsets\": [ 691\n ], \n \"k_image\": \"6ebee1b651a8da723462b4891d471b990ddc226049a0866d3029b8e2f75b7012\"\n }\n }, {\n \"key\": {\n \"amount\": 9000000000000, \n \"key_offsets\": [ 175760\n ], \n \"k_image\": \"200bd02b70ee707441a8863c5279b4e4d9f376dc97a140b1e5bc7d72bc508069\"\n }\n }, ... \n ], \n \"vout\": [ {\n \"amount\": 60000000000, \n \"target\": {\n \"key\": \"8c792dea94dab48160e067fb681edd6247ba375281fbcfedc03cb970f3b98e2d\"\n }\n }, {\n \"amount\": 700000000000, \n \"target\": {\n \"key\": \"1ab33e69737e157d23e33274c42793be06a8711670e73fa10ecebc604f87cc71\"\n }\n }, ... \n ], \n \"extra\": [ 1, 3, 140, 109, 156, 205, 47, 148, 153, 9, 17, 93, 83, 33, 162, 110, 152, 1, 139, 70, 121, 19, 138, 10, 44, 6, 55, 140, 242, 124, 143, 219, 172\n ], \n \"signatures\": [ \"fd82214a59c99d9251fa00126d353f9cf502a80d8993a6c223e3c802a40ab405555637f495903d3ba558312881e586d452e6e95826d8e128345f6c0a8f9f350e\", \"8c04ef50cf34afa3a9ec19c457143496f8cf7045ed869b581f9efa2f1d65e30f1cec5272b00e9c61a34bdd3c78cf82ae8ef4df3132f70861391069b9c255cd08\", ... ]\n}", + "block_height": 993442, + "block_timestamp": 1457749396, + "double_spend_seen": false, + "in_pool": false, + "output_indices": [198769,418598,176616,50345,509], + "tx_hash": "d6e48158472848e6687173a91ae6eebfa3e1d778e65252ee99d7515d63090408" + }], + "txs_as_hex": ["..."], + "txs_as_json": ["{\n \"version\": 1, \n \"unlock_time\": 0, \n \"vin\": [ {\n \"key\": {\n \"amount\": 9999999999, \n \"key_offsets\": [ 691\n ], \n \"k_image\": \"6ebee1b651a8da723462b4891d471b990ddc226049a0866d3029b8e2f75b7012\"\n }\n }, {\n \"key\": {\n \"amount\": 9000000000000, \n \"key_offsets\": [ 175760\n ], \n \"k_image\": \"200bd02b70ee707441a8863c5279b4e4d9f376dc97a140b1e5bc7d72bc508069\"\n }\n }, ... \n ], \n \"vout\": [ {\n \"amount\": 60000000000, \n \"target\": {\n \"key\": \"8c792dea94dab48160e067fb681edd6247ba375281fbcfedc03cb970f3b98e2d\"\n }\n }, {\n \"amount\": 700000000000, \n \"target\": {\n \"key\": \"1ab33e69737e157d23e33274c42793be06a8711670e73fa10ecebc604f87cc71\"\n }\n }, ... \n ], \n \"extra\": [ 1, 3, 140, 109, 156, 205, 47, 148, 153, 9, 17, 93, 83, 33, 162, 110, 152, 1, 139, 70, 121, 19, 138, 10, 44, 6, 55, 140, 242, 124, 143, 219, 172\n ], \n \"signatures\": [ \"fd82214a59c99d9251fa00126d353f9cf502a80d8993a6c223e3c802a40ab405555637f495903d3ba558312881e586d452e6e95826d8e128345f6c0a8f9f350e\", \"8c04ef50cf34afa3a9ec19c457143496f8cf7045ed869b581f9efa2f1d65e30f1cec5272b00e9c61a34bdd3c78cf82ae8ef4df3132f70861391069b9c255cd08\", ... ]\n}"], + "untrusted": false +} +``` + +Example 3: Returned a missed (unexisting) transaction. + +``` +curl -X POST http://127.0.0.1:18081/get_transactions -d '{"txs_hashes":["d6e48158472848e6687173a91ae6eebfa3e1d778e65252ee99d7515d63090409"]}' -H 'Content-Type: application/json' + +{ + "missed_tx": ["d6e48158472848e6687173a91ae6eebfa3e1d778e65252ee99d7515d63090409"], + "status": "OK", + "untrusted": false +} +``` + + +### **/get_alt_blocks_hashes** + +Get the known blocks hashes which are not on the main chain. + +Alias: *None*. + +Inputs: *None* + +Outputs: + +* *blks_hashes* - array of strings; list of alternative blocks hashes to main chain +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/get_alt_blocks_hashes -H 'Content-Type: application/json' + +{ + "blks_hashes": ["9c2277c5470234be8b32382cdf8094a103aba4fcd5e875a6fc159dc2ec00e011","637c0e0f0558e284493f38a5fcca3615db59458d90d3a5eff0a18ff59b83f46f","6f3adc174a2e8082819ebb965c96a095e3e8b63929ad9be2d705ad9c086a6b1c","697cf03c89a9b118f7bdf11b1b3a6a028d7b3617d2d0ed91322c5709acf75625","d99b3cf3ac6f17157ac7526782a3c3b9537f89d07e069f9ce7821d74bd9cad0e","e97b62109a6303233dcd697fa8545c9fcbc0bf8ed2268fede57ddfc36d8c939c","70ff822066a53ad64b04885c89bbe5ce3e537cdc1f7fa0dc55317986f01d1788","b0d36b209bd0d4442b55ea2f66b5c633f522401f921f5a85ea6f113fd2988866"], + "status": "OK", + "untrusted": false +} +``` + + +### **/is_key_image_spent** + +Check if outputs have been spent using the key image associated with the output. + +Alias: *None*. + +Inputs: + +* *key_images* - string list; List of key image hex strings to check. + +Outputs: + +* *spent_status* - unsigned int list; List of statuses for each image checked. Statuses are follows: 0 = unspent, 1 = spent in blockchain, 2 = spent in transaction pool +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/is_key_image_spent -d '{"key_images":["8d1bd8181bf7d857bdb281e0153d84cd55a3fcaa57c3e570f4a49f935850b5e3","7319134bfc50668251f5b899c66b005805ee255c136f0e1cecbb0f3a912e09d4"]}' -H 'Content-Type: application/json' + +{ + "spent_status": [1,2], + "status": "OK" + "untrusted": false +} +``` + + +### **/send_raw_transaction** + +Broadcast a raw transaction to the network. + +Alias: */sendrawtransaction*. + +Inputs: + +* *tx_as_hex* - string; Full transaction information as hexidecimal string. +* *do_not_relay* - boolean; Stop relaying transaction to other nodes (default is `false`). + +Outputs: + +* *double_spend* - boolean; Transaction is a double spend (`true`) or not (`false`). +* *fee_too_low* - boolean; Fee is too low (`true`) or OK (`false`). +* *invalid_input* - boolean; Input is invalid (`true`) or valid (`false`). +* *invalid_output* - boolean; Output is invalid (`true`) or valid (`false`). +* *low_mixin* - boolean; Mixin count is too low (`true`) or OK (`false`). +* *not_rct* - boolean; Transaction is a standard ring transaction (`true`) or a ring confidential transaction (`false`). +* *not_relayed* - boolean; Transaction was not relayed (`true`) or relayed (`false`). +* *overspend* - boolean; Transaction uses more money than available (`true`) or not (`false`). +* *reason* - string; Additional information. Currently empty or "Not relayed" if transaction was accepted but not relayed. +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. +* *too_big* - boolean; Transaction size is too big (`true`) or OK (`false`). +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + +Example (No return information included here.): + + +``` +$ curl -X POST http://127.0.0.1:18081/send_raw_transaction -d '{"tx_as_hex":"de6a3...", "do_not_relay":false}' -H 'Content-Type: application/json' +``` + + +### **/start_mining** + +Start mining on the daemon. + +Alias: *None*. + +Inputs: + +* *do_background_mining* - boolean; States if the mining should run in background (`true`) or foreground (`false`). +* *ignore_battery* - boolean; States if batery state (on laptop) should be ignored (`true`) or not (`false`). +* *miner_address* - string; Account address to mine to. +* *threads_count* - unsigned int; Number of mining thread to run. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/start_mining -d '{"do_background_mining":false,"ignore_battery":true,"miner_address":"47xu3gQpF569au9C2ajo5SSMrWji6xnoE5vhr94EzFRaKAGw6hEGFXYAwVADKuRpzsjiU1PtmaVgcjUJF89ghGPhUXkndHc","threads_count":1}' -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/stop_mining** + +Stop mining on the daemon. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/stop_mining -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/mining_status** + +Get the mining status of the daemon. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *active* - boolean; States if mining is enabled (`true`) or disabled (`false`). +* *address* - string; Account address daemon is mining to. Empty if not mining. +* *is_background_mining_enabled* - boolean; States if the mining is running in background (`true`) or foreground (`false`). +* *speed* - unsigned int; Mining power in hashes per seconds. +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. +* *threads_count* - unsigned int; Number of running mining threads. + +Example while mining: + +``` +$ curl -X POST http://127.0.0.1:18081/mining_status -H 'Content-Type: application/json' + +{ + "active": true, + "address": "47xu3gQpF569au9C2ajo5SSMrWji6xnoE5vhr94EzFRaKAGw6hEGFXYAwVADKuRpzsjiU1PtmaVgcjUJF89ghGPhUXkndHc", + "is_background_mining_enabled": false, + "speed": 20, + "status": "OK", + "threads_count": 1 +} +``` + +Example while not mining: + +``` +$ curl -X POST http://127.0.0.1:18081/mining_status -H 'Content-Type: application/json' + +{ + "active": false, + "address": "", + "is_background_mining_enabled": false, + "speed": 0, + "status": "OK", + "threads_count": 0 +} +``` + + +### **/save_bc** + +Save the blockchain. The blockchain does not need saving and is always saved when modified, however it does a sync to flush the filesystem cache onto the disk for safety purposes against Operating System or Harware crashes. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/save_bc -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/get_peer_list** + +Get the known peers list. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *gray_list* - array of offline *peer* structure as follows: + * *host* - unsigned int; IP address in integer format + * *id* - string; Peer id + * *ip* - unsigned int; IP address in integer format + * *last_seen* - unsigned int; unix time at which the peer has been seen for the last time + * *port* - unsigned int; TCP port the peer is using to connect to monero network. +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. +* *white_list* - array of online *peer* structure, as above. + +Example (truncated lists): + +``` +$ curl -X POST http://127.0.0.1:18081/get_peer_list -H 'Content-Type: application/json' + +{ + "gray_list": [{ + "host": "640304833", + "id": 5345237316225602120, + "ip": 640304833, + "last_seen": 1525540510, + "port": 18080 + },{ + "host": "2183731038", + "id": 14955030573998424430, + "ip": 2183731038, + "last_seen": 1525540499, + "port": 28080 + }, ... + ], + "status": "OK", + "white_list": [{ + "host": "1221637955", + "id": 10354694710033118926, + "ip": 1221637955, + "last_seen": 1525540511, + "port": 18080 + },{ + "host": "1780407354", + "id": 17193661050352240890, + "ip": 1780407354, + "last_seen": 1525540510, + "port": 18080 + }, ... + ] +} +``` + + +### **/set_log_hash_rate** + +Set the log hash rate display mode. + +Alias: *None*. + +Inputs: + +* *visible* - boolean; States if hash rate logs should be visible (`true`) or hidden (`false`) + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. + +Example while mining: + +``` +$ curl -X POST http://127.0.0.1:18081/set_log_hash_rate -d '{"visible":true}' -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + +Error while not mining: + +``` +$ curl -X POST http://127.0.0.1:18081/set_log_hash_rate -d '{"visible":true}' -H 'Content-Type: application/json' + +{ + "status": "NOT MINING" +} +``` + + +### **/set_log_level** + +Set the daemon log level. +By default, log level is set to `0`. + +Alias: *None*. + +Inputs: + +* *level* - integer; daemon log level to set from `0` (less verbose) to `4` (most verbose) + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/set_log_level -d '{"level":1}' -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/set_log_categories** + +Set the daemon log categories. +Categories are represented as a comma separated list of `:` (similarly to syslog standard `:`), where: +* *Category* is one of the following: + * *\** - All facilities + * *default* + * *net* + * *net.http* + * *net.p2p* + * *logging* + * *net.throttle* + * *blockchain.db* + * *blockchain.db.lmdb* + * *bcutil* + * *checkpoints* + * *net.dns* + * *net.dl* + * *i18n* + * *perf* + * *stacktrace* + * *updates* + * *account* + * *cn* + * *difficulty* + * *hardfork* + * *miner* + * *blockchain* + * *txpool* + * *cn.block_queue* + * *net.cn* + * *daemon* + * *debugtools.deserialize* + * *debugtools.objectsizes* + * *device.ledger* + * *wallet.gen_multisig* + * *multisig* + * *bulletproofs* + * *ringct* + * *daemon.rpc* + * *wallet.simplewallet* + * *WalletAPI* + * *wallet.ringdb* + * *wallet.wallet2* + * *wallet.rpc* + * *tests.core* +* *Level* is one of the following: + * *FATAL* - higher level + * *ERROR* + * *WARNING* + * *INFO* + * *DEBUG* + * *TRACE* - lower level +A level automatically includes higher level. +By default, categories are set to `*:WARNING,net:FATAL,net.p2p:FATAL,net.cn:FATAL,global:INFO,verify:FATAL,stacktrace:INFO,logging:INFO,msgwriter:INFO`. +Setting the categories to "" prevent any logs to be outputed. + +Alias: *None*. + +Inputs: + +* *categories* - string; Optional, daemon log categories to enable + +Outputs: + +* *categories* - string; daemon log enabled categories +* *status* - string; General RPC error code. "OK" means everything looks good. Any other value means that something went wrong. + +Example to set all facilities to Security Level `Info`: + +``` +$ curl -X POST http://127.0.0.1:18081/set_log_categories -d '{"categories": "*:INFO"}' -H 'Content-Type: application/json' + +{ + "categories": "*:INFO", + "status": "OK" +} +``` + +Example without input to set the default categories: + +``` +$ curl -X POST http://127.0.0.1:18081/set_log_categories -H 'Content-Type: application/json' + +{ + "categories": "*:WARNING,net:FATAL,net.p2p:FATAL,net.cn:FATAL,global:INFO,verify:FATAL,stacktrace:INFO,logging:INFO,msgwriter:INFO", + "status": "OK" +} +``` + + +### **/get_transaction_pool** + +Show information about valid transactions seen by the node but not yet mined into a block, as well as spent key image information for the txpool in the node's memory. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *spent_key_images* - List of spent output key images: + * *id_hash* - string; Key image. + * *txs_hashes* - string list; tx hashes of the txes (usually one) spending that key image. +* *status* - string; General RPC error code. "OK" means everything looks good. +* *transactions* - List of transactions in the mempool are not in in a block on the main chain at the moment: + * *blob_size* - unsigned int; The size of the full transaction blob. + * *double_spend_seen* - boolean; States if this transaction has been seen as double spend. + * *do_not_relay*; boolean; States if this transaction should not be relayed + * *fee* - unsigned int; The amount of the mining fee included in the transaction, in @atomic-units. + * *id_hash* - string; The transaction ID hash. + * *kept_by_block* - boolean; States if the tx was included in a block at least once (`true`) or not (`false`). + * *last_failed_height* - unsigned int; If the transaction validation has previously failed, this tells at what height that occured. + * *last_failed_id_hash* - string; Like the previous, this tells the previous transaction ID hash. + * *last_relayed_time* - unsigned int; Last unix time at which the transaction has been relayed. + * *max_used_block_height* - unsigned int; Tells the height of the most recent block with an output used in this transaction. + * *max_used_block_hash* - string; Tells the hash of the most recent block with an output used in this transaction. + * *receive_time* - unsigned int; The Unix time that the transaction was first seen on the network by the node. + * *relayed* - boolean; States if this transaction has been relayed + * *tx_blob* - unsigned int; Hexadecimal blob represnting the transaction. + * *tx_json* - json string; JSON structure of all information in the transaction: + * *version* - Transaction version + * *unlock_time* - If not 0, this tells when a transaction output is spendable. + * *vin* - List of inputs into transaction: + * *key* - The public key of the previous output spent in this transaction. + * *amount* - The amount of the input, in @atomic-units. + * *key_offsets* - A list of integer offets to the input. + * *k_image* - The key image for the given input + * *vout* - List of outputs from transaction: + * *amount* - Amount of transaction output, in @atomic-units. + * *target* - Output destination information: + * *key* - The stealth public key of the receiver. Whoever owns the private key associated with this key controls this transaction output. + * *extra* - Usually called the "transaction ID" but can be used to include any random 32 bytes. + * *rct_signatures* - Ring signatures: + * *type* + * *txnFee* + * *ecdhInfo* - array of Diffie Helman Elipctic curves structures as follows: + * *mask* - String + * *amount* - String + * *outPk* + * *rctsig_prunable* + * *rangeSigs* - array of structures as follows: + * *asig* + * *Ci* + * *MGs* - array of structures as follows: + * *ss* - array of arrays of two strings. + * *cc* - String + +Example (Note: Some lists in the returned information have been truncated for display reasons): + +``` +$ curl -X POST http://127.0.0.1:18081/get_transaction_pool -H 'Content-Type: application/json' + +{ + "spent_key_images": [{ + "id_hash": "a2af919609db4ff5ab8d4ba18502e647d521760e1cbc30288f06fa87bf9a0c1c", + "txs_hashes": ["1ee6a4873b638711795fc3b0b73fc7146505a09a7f4749534fd408d571a273cf"] + },{ + "id_hash": "02d5f6559e9bca5ae5a335130aeeb05df2db518ab9837fa64ebbab276c100792", + "txs_hashes": ["531aacc0ceb8514cdde5f104285202ccc3e969c77584e3c6fa614c987c583965"] + }, + ...], + "status": "OK", + "transactions": [{ + "blob_size": 13193, + "do_not_relay": false, + "double_spend_seen": false, + "fee": 9694360000, + "id_hash": "f8fb875cfc9e2e59bcf96a42474c79e01d50b69e6548d445d45984f7db66e50f", + "kept_by_block": false, + "last_failed_height": 0, + "last_failed_id_hash": "0000000000000000000000000000000000000000000000000000000000000000", + "last_relayed_time": 1525615049, + "max_used_block_height": 1564924, + "max_used_block_id_hash": "4bae7856979f46c7de31f3fb58cac36d4dfd2765bf33f876edf33d0e05ebb4a7", + "receive_time": 1525615049, + "relayed": true, + "tx_blob": " ... ", + "tx_json": "{\n \"version\": 2, \n \"unlock_time\": 0, \n \"vin\": [ {\n \"key\": {\n \"amount\": 0, \n \"key_offsets\": [ 2630347, 594429, 1047509, 758973, 464501, 61971, 22268\n ], \n \"k_image\": \"0731363c58dd4492f031fa20c82fe6ddcb9cc070d73938afe8a5f7f77897f8b4\"\n }\n }\n ], \n \"vout\": [ {\n \"amount\": 0, \n \"target\": {\n \"key\": \"f3b3dd09483616e343b9866eed50a0ce01d5c0d0f2612ce2c4d0e9cce5c218cd\"\n }\n }, {\n \"amount\": 0, \n \"target\": {\n \"key\": \"9796f2d477a696b6282bf3cb1a41cefba0c4604eedcc2e7a44904d7033643e0e\"\n }\n }\n ], \n \"extra\": [ 1, 25, 228, 80, 5, 214, 117, 150, 9, 125, 98, 17, 113, 208, 89, 223, 242, 227, 188, 197, 141, 190, 135, 140, 152, 117, 240, 150, 21, 93, 62, 108, 124\n ], \n \"rct_signatures\": {\n \"type\": 1, \n \"txnFee\": 9694360000, \n \"ecdhInfo\": [ {\n \"mask\": \"645f06a2816aecf83d5041c3320eb31092b994fb2733bb74c8c47e288d452c04\", \n \"amount\": \"3908f14d39dcb3831331cb255eeadc5b0aea0143645b9cd3034abf613995740d\"\n }, {\n \"mask\": \"0785b5df0a994b14d59da810503a022721d8f629720f526e15bd848ad3c2c509\", \n \"amount\": \"fbd81cf2368dcd742905ded5287457030467aaf5bc9939e13f1d6bf8d4c8ca09\"\n }], \n \"outPk\": [ \"c19f5fa052859126e0eed0e3c860aadab049677b2b3dd14cc74d02f92f1d013f\", \"1581ef6368de1608ea366566b88272db220479cf215f6d88d7b60ec221d11e0a\"]\n }, \n \"rctsig_prunable\": {\n \"rangeSigs\": [ {\n \"asig\": \" ... \", \n \"Ci\": \" .. \"\n }, {\n \"asig\": \" ... \", \n \"Ci\": \" ... \"\n }], \n \"MGs\": [ {\n \"ss\": [ [ \"218a10a29e0f66e5a324af67b7734708a8a4cc8f16b28acd8cda538aaa495a02\", \"b368b4e956df5808c5c257f0dc3f7eff8c28463d0bb20759d19977fa02d6f205\"], [ \"f741d2c96bc23b362b4155a03fb6f1351ab5bf4445a43b3e52ba776f526af305\", \"a10ad1ee80dce3f311dd3dc141803daeecaa4d2a25a390cd9c35e4161b7c9e0c\"], + ...], \n \"cc\": \"e93801b707261ca76e146fdf2085abae71ad9203a00edc843c74f4ead8a39601\"\n }]\n }\n}" + }, + ...] +} +``` + + +### **/get_transaction_pool_hashes.bin** + +Get hashes from transaction pool. Binary request. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. +* *tx_hashes* - binary array of transaction hashes. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/get_transaction_pool_hashes.bin -H 'Content-Type: application/json' + +{ + "status": "OK", + "tx_hashes": " ... ", + "untrusted": false +} +``` + + +### **/get_transaction_pool_stats** + +Get the transaction pool statistics. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *pool_stats* - Structure as follows: + * *bytes_max* - unsigned int; Max transaction size in pool + * *bytes_med* - unsigned int; Median transaction size in pool + * *bytes_min* - unsigned int; Min transaction size in pool + * *bytes_total* - unsigned int; total size of all transactions in pool + * *histo* - structure *txpool_histo* as follows: + * *txs* - unsigned int; number of transactions + * *bytes* - unsigned int; size in bytes. + * *histo_98pc* unsigned int; the time 98% of txes are "younger" than + * *num_10m* unsigned int; number of transactions in pool for more than 10 minutes + * *num_double_spends* unsigned int; number of double spend transactions + * *num_failing* unsigned int; number of failing transactions + * *num_not_relayed* unsigned int; number of non-relayed transactions + * *oldest* unsigned int; unix time of the oldest transaction in the pool + * *txs_total* unsigned int; total number of transactions. +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/get_transaction_pool_stats -H 'Content-Type: application/json' + +{ + "pool_stats": { + "bytes_max": 47222, + "bytes_med": 13290, + "bytes_min": 13092, + "bytes_total": 449511, + "fee_total": 289715320000, + "histo": "\t▒'▒5▒4▒\/▒▒▒$3", + "histo_98pc": 0, + "num_10m": 18, + "num_double_spends": 1, + "num_failing": 17, + "num_not_relayed": 0, + "oldest": 1525457001, + "txs_total": 26 + }, + "status": "OK", + "untrusted": false +} +``` + + +### **/stop_daemon** + +Send a command to the daemon to safely disconnect and shut down. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/stop_daemon -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/get_info (not JSON)** + +This method is a convenient backward support and should not be used anymore. See [get_info](#get_info) JSON RPC for details. + +Alias: + +* */getinfo* +* *get_info* + + +### **/get_limit** + +Get daemon bandwidth limits. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *limit_down* - unsigned int; Download limit in kBytes per second +* *limit_up* - unsigned int; Upload limit in kBytes per second +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/get_limit -H 'Content-Type: application/json' + +{ + "limit_down": 8192, + "limit_up": 128, + "status": "OK", + "untrusted": false +} +``` + + +### **/set_limit** + +Set daemon bandwidth limits. + +Alias: *None*. + +Inputs: + +* *limit_down* - signed int; Download limit in kBytes per second (-1 reset to default, 0 don't change the current limit) +* *limit_up* - signed int; Upload limit in kBytes per second (-1 reset to default, 0 don't change the current limit) + +Outputs: + +* *limit_down* - unsigned int; Download limit in kBytes per second +* *limit_up* - unsigned int; Upload limit in kBytes per second +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/set_limit -d '{"limit_down": 1024}' -H 'Content-Type: application/json' + +{ + "limit_down": 1024, + "limit_up": 128, + "status": "OK" +} +``` + + +### **/out_peers** + +Limit number of Outgoing peers. + +Alias: *None*. + +Inputs: + +* *out_peers* - unsigned int; Max number of outgoing peers + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/out_peers -d '{"out_peers": 3232235535}' -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/in_peers** + +Limit number of Incoming peers. + +Alias: *None*. + +Inputs: + +* *in_peers* - unsigned int; Max number of incoming peers + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/out_peers -d '{"in_peers": 3232235535}' -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/start_save_graph** + +Obsolete. Conserved here for reference. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/start_save_graph -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/stop_save_graph** + +Obsolete. Conserved here for reference. + +Alias: *None*. + +Inputs: *None*. + +Outputs: + +* *status* - string; General RPC error code. "OK" means everything looks good. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/stop_save_graph -H 'Content-Type: application/json' + +{ + "status": "OK" +} +``` + + +### **/get_outs** + +Get outputs. + +Alias: *None*. + +Inputs: + +* *outputs* array of *get_outputs_out* structure as follows: + * *amount* - unsigned int; + * *index* - unsigned int; + +Outputs: + +* *outs* - array of structure *outkey* as follows: + * *height* - unsigned int; block height of the output + * *key* - String; the public key of the output + * *mask* - String + * *txid* - String; transaction id + * *unlocked* - boolean; States if output is locked (`false`) or not (`true`) +* *status* - string; General RPC error code. "OK" means everything looks good. +* *untrusted* - boolean; States if the result is obtained using the bootstrap mode, and is therefore not trusted (`true`), or when the daemon is fully synced (`false`). + + +### **/update** + +Update daemon. + +Alias: *None*. + +Inputs: + +* *command* - String; command to use, either `check` or `download` +* *path* - String; Optional, path where to download the update. + +Outputs: + +* *auto_uri* - string; +* *hash* - string; +* *path* - String; path to download the update +* *status* - string; General RPC error code. "OK" means everything looks good. +* *update* - boolean; States if an update is available to download (`true`) or not (`false`) +* *user_uri* - string; +* *version* - string; Version available for download. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18081/update -d '{"command":"check"}' -H 'Content-Type: application/json' + +{ + "auto_uri": "", + "hash": "", + "path": "", + "status": "OK", + "update": false, + "user_uri": "", + "version": "" +} +``` + diff --git a/_i18n/ar/resources/developer-guides/wallet-rpc.md b/_i18n/ar/resources/developer-guides/wallet-rpc.md new file mode 100644 index 00000000..09840966 --- /dev/null +++ b/_i18n/ar/resources/developer-guides/wallet-rpc.md @@ -0,0 +1,1642 @@ +{% include untranslated.html %} +## Introduction + +This is a list of the monero-wallet-rpc calls, their inputs and outputs, and examples of each. The program monero-wallet-rpc replaced the rpc interface that was in simplewallet and then monero-wallet-cli. + +All monero-wallet-rpc methods use the same JSON RPC interface. For example: + +``` +IP=127.0.0.1 +PORT=18082 +METHOD="make_integrated_address" +PARAMS="{\"payment_id\":\"1234567890123456789012345678900012345678901234567890123456789000\"}" +curl \ + -X POST http://$IP:$PORT/json_rpc \ + -d '{"jsonrpc":"2.0","id":"0","method":"'$METHOD'","params":'"$PARAMS"'}' \ + -H 'Content-Type: application/json' +``` + +If the monero-wallet-rpc was executed with the `--rpc-login` argument as `username:password`, then follow this example: + +``` +IP=127.0.0.1 +PORT=18082 +METHOD="make_integrated_address" +PARAMS="{\"payment_id\":\"1234567890123456789012345678900012345678901234567890123456789000\"}" +curl \ + -u username:password --digest \ + -X POST http://$IP:$PORT/json_rpc \ + -d '{"jsonrpc":"2.0","id":"0","method":"'$METHOD'","params":'"$PARAMS"'}' \ + -H 'Content-Type: application/json' +``` + +Note: "@atomic-units" refer to the smallest fraction of 1 XMR according to the monerod implementation. **1 XMR = 1e12 @atomic-units.** + +### Index of JSON RPC Methods: + +* [getbalance](#getbalance) +* [getaddress](#getaddress) +* [getheight](#getheight) +* [transfer](#transfer) +* [transfer_split](#transfer_split) +* [sweep_dust](#sweep_dust) +* [sweep_all](#sweep_all) +* [store](#store) +* [get_payments](#get_payments) +* [get_bulk_payments](#get_bulk_payments) +* [get_transfers](#get_transfers) +* [get_transfer_by_txid](#get_transfer_by_txid) +* [incoming_transfers](#incoming_transfers) +* [query_key](#query_key) +* [make_integrated_address](#make_integrated_address) +* [split_integrated_address](#split_integrated_address) +* [stop_wallet](#stop_wallet) +* [make_uri](#make_uri) +* [parse_uri](#parse_uri) +* [rescan_blockchain](#rescan_blockchain) +* [set_tx_notes](#set_tx_notes) +* [get_tx_notes](#get_tx_notes) +* [sign](#sign) +* [verify](#verify) +* [export_key_images](#export_key_images) +* [import_key_images](#import_key_images) +* [get_address_book](#get_address_book) +* [add_address_book](#add_address_book) +* [delete_address_book](#delete_address_book) +* [rescan_spent](#rescan_spent) +* [start_mining](#start_mining) +* [stop_mining](#stop_mining) +* [get_languages](#get_languages) +* [create_wallet](#create_wallet) +* [open_wallet](#open_wallet) +* [get_accounts](#get_accounts) +* [create_account](#create_account) +* [label_account](#label_account) +* [create_address](#create_address) +* [label_address](#label_address) +* [get_account_tags](#get_account_tags) +* [tag_accounts](#tag_accounts) +* [untag_accounts](#untag_accounts) +* [set_account_tag_description](#set_account_tag_description) + +--- + +## JSON RPC Methods: + +### **getbalance** + +Return the wallet's balance. + +Inputs: + +* *account_index* - unsigned int; Return balance for this account. + +Outputs: + +* *balance* - unsigned int; The total balance of the current monero-wallet-rpc in session. +* *unlocked_balance* - unsigned int; Unlocked funds are those funds that are sufficiently deep enough in the Monero blockchain to be considered safe to spend. +* *multisig_import_needed* - boolean; True if importing multisig data is needed for returning a correct balance. +* *per_subaddress* - array of subaddress information; Balance information for each subaddress in an account. + * *address_index* - unsigned int; Index of the subaddress in the account. + * *address* - string; Address at this index. Base58 representation of the public keys. + * *balance* - unsigned int; Balance for the subaddress (locked or unlocked). + * *unlocked_balance* - unsigned int; Unlocked balance for the subaddress. + * *label* - string; Label for the subaddress. + * *num_unspent_outputs* - unsigned int; Number of unspent outputs available for the subaddress. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"getbalance","params":{"account_index":0}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "balance": 140000000000, + "unlocked_balance": 50000000000, + "multisig_import_needed": false, + "per_subaddress": { + "address_index": 0, + "address": "427ZuEhNJQRXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQGaDsaBA", + "balance": 140000000000, + "unlocked_balance": 50000000000, + "label": "", + "num_unspent_outputs": 42 + } + } +} +``` + + +### **getaddress** + +Return the wallet's addresses for an account. Optionally filter for specific set of subaddresses. + +Inputs: + +* *account_index* - unsigned int; Return subaddresses for this account. +* *address_index* - array of unsigned int; (Optional) List of subaddresses to return from an account. + +Outputs: + +* *address* - string; The 95-character hex address string of the monero-wallet-rpc in session. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"getaddress","params":{"account_index":0,"address_index":[0,1]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "address": "427ZuEhNJQRXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQGaDsaBA", + "addresses": [{ + "address": "427ZuEhNJQRXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQGaDsaBA", + "address_index": 0, + "label": "Primary account", + "used": false + },{ + "address": "88bV1uo76AaKZaWD389kCf5EfPxKFYEKUQbs9ZRJm23E2X2oYgV9bQ54FiY6hAB83aDXMUSZF6KWyfeQqzLqaAeeFrk9iic", + "address_index": 1, + "label": "", + "used": false + }] + } +} +``` + + +### **getheight** + +Returns the wallet's current block height. + +Inputs: *None*. + +Outputs: + +* *height* - unsigned int; The current monero-wallet-rpc's blockchain height. If the wallet has been offline for a long time, it may need to catch up with the daemon. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"getheight"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "height": 994310 + } +} +``` + + +### **transfer** + +Send monero to a number of recipients. + +Inputs: + +* *destinations* - array of destinations to receive XMR: + * *amount* - unsigned int; Amount to send to each destination, in @atomic-units. + * *address* - string; Destination public address. +* *account_index* - unsigned int; Transfer from this account index. +* *subaddr_indices* - array of unsigned int; Transfer from this set of subaddresses. +* *fee* - unsigned int; Ignored, will be automatically calculated. +* *mixin* - unsigned int; Number of outpouts from the blockchain to mix with (0 means no mixing). +* *unlock_time* - unsigned int; Number of blocks before the monero can be spent (0 to not add a lock). +* *payment_id* - string; (Optional) Random 32-byte/64-character hex string to identify a transaction. +* *get_tx_key* - boolean; (Optional) Return the transaction key after sending. +* *priority* - unsigned int; Set a priority for the transaction. Accepted Values are: 0-3 for: default, unimportant, normal, elevated, priority. +* *do_not_relay* - boolean; (Optional) If true, the newly created transaction will not be relayed to the monero network. (Defaults to false) +* *get_tx_hex* - boolean; Return the transaction as hex string after sending +* *get_tx_metadata* - boolean; Return the metadata needed to relay the transaction. + + +Outputs: + +* *fee* - Integer value of the fee charged for the txn. +* *tx_hash* - String for the publically searchable transaction hash +* *tx_key* - String for the transaction key if get_tx_key is true, otherwise, blank string. +* *amount_keys* - List of strings for the amount keys. +* *amount* - Amount transferred for the transaction. +* *tx_blob* - Raw transaction represented as hex string, if get_tx_hex is true. +* *tx_metadata* - Set of transaction metadata needed to relay this transfer later, if get_tx_metadata is true. +* *multisig_txset* - Set of multisig transactions in the process of being signed (empty for non-multisig). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"transfer","params":{"destinations":[{"amount":100000000,"address":"9wNgSYy2F9qPZu7KBjvsFgZLTKE2TZgEpNFbGka9gA5zPmAXS35QzzYaLKJRkYTnzgArGNX7TvSqZC87tBLwtaC5RQgJ8rm"},{"amount":200000000,"address":"9vH5D7Fv47mbpCpdcthcjU34rqiiAYRCh1tYywmhqnEk9iwCE9yppgNCXAyVHG5qJt2kExa42TuhzQfJbmbpeGLkVbg8xit"}],"mixin":4,"get_tx_key": true}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "fee": 48958481211, + "tx_hash": "985180f468637bc6d2f72ee054e1e34b8d5097988bb29a2e0cb763e4464db23c", + "tx_key": "8d62e5637f1fcc9a8904057d6bed6c697618507b193e956f77c31ce662b2ee07", + "amount_keys":[], + "amount": 300000000, + "tx_blob": "", + "tx_metadata": "", + "multisig_txset": "" + } +} +``` + + +### **transfer_split** + +Same as transfer, but can split into more than one tx if necessary. + +Inputs: + +* *destinations* - array of destinations to receive XMR: + * *amount* - unsigned int; Amount to send to each destination, in @atomic-units. + * *address* - string; Destination public address. +* *account_index* - unsigned int; Transfer from this account. +* *subaddr_indices* - array of unsigned int; Transfer from this set of subaddresses. +* *mixin* - unsigned int; Number of outputs from the blockchain to mix with (0 means no mixing). +* *ring_size* - unsigned int; Sets ringsize to n (mixin + 1). +* *unlock_time* - unsigned int; Number of blocks before the monero can be spent (0 to not add a lock). +* *payment_id* - string; (Optional) Random 32-byte/64-character hex string to identify a transaction. +* *get_tx_keys* - boolean; (Optional) Return the transaction keys after sending. -- Ignored +* *priority* - unsigned int; Set a priority for the transactions. Accepted Values are: 0-3 for: default, unimportant, normal, elevated, priority. +* *do_not_relay* - boolean; (Optional) If true, the newly created transaction will not be relayed to the monero network. (Defaults to false) +* *get_tx_hex* - boolean; Return the transactions as hex string after sending +* *new_algorithm* - boolean; True to use the new transaction construction algorithm, defaults to false. +* *get_tx_metadata* - boolean; Return list of transaction metadata needed to relay the transfer later. + +Outputs: + +* *fee_list* - array of: integer. The amount of fees paid for every transaction. +* *tx_hash_list* - array of: string. The tx hashes of every transaction. +* *tx_blob_list* - array of: string. The tx as hex string for every transaction. +* *amount_list* - array of: integer. The amount transferred for every transaction.. +* *tx_key_list* - array of: string. The transaction keys for every transaction. +* *tx_metadata_list* - array of: string. List of transaction metadata needed to relay the transactions later. +* *multisig_txset* - string. The set of signing keys used in a multisig transaction (empty for non-multisig). + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"transfer_split","params":{"destinations":[{"amount":100000000,"address":"9wNgSYy2F9qPZu7KBjvsFgZLTKE2TZgEpNFbGka9gA5zPmAXS35QzzYaLKJRkYTnzgArGNX7TvSqZC87tBwtaC5RQgJ8rm"},{"amount":200000000,"address":"9vH5D7Fv47mbpCpdcthcjU34rqiiAYRCh1tYywmhqnEk9iwCE9yppgNCXAyVHG5qJt2kExa42TuhzQfJbmbpeGLkVbg8xit"},{"amount":200000000,"address":"9vC5Q25cR1d3WzKX6dpTaLJaqZyDrtTnfadTmVuB1Wue2tyFGxUhiE4RGa74pEDJv7gSySzcd1Ao6G1nzSaqp78vLfP6MPj"},{"amount":200000000,"address":"A2MSrn49ziBPJBh8ZNEhhbfyLMou6mao4C1F5TLGUatmUnCxZArDYkcbAnVkVEopWVeak2rKDrmc8JpoS7n5dvfN9YDPBTG"},{"amount":200000000,"address":"9tEDyVQ8zgRQbDYiykTdpw5kZ6qWQWcKfExEj9eQshjpGb3sdr3UyWE2AHWzUGzJjaH9HN1DdGBdyQQ4AqGMc7rr5xYwZWW"}],"mixin":4,"get_tx_key": true, "new_algorithm": true}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "fee_list": [97916962422], + "tx_hash_list": ["c5c389846e701c27aaf1f7ab8b9dc457b471fcea5bc9710e8020d51275afbc54"] + } +} +``` + + +### **sweep_dust** + +Send all dust outputs back to the wallet's, to make them easier to spend (and mix). + +Inputs: *None*. + +Outputs: + +* *tx_hash_list* - list of: string + +Example (In this example, `sweep_dust` returns an error due to insufficient funds to sweep): + + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"sweep_dust"}' -H 'Content-Type: application/json' + +{ + "error": { + "code": -4, + "message": "not enough money" + }, + "id": "0", + "jsonrpc": "2.0" +} +``` + +### **sweep_all** + +Send all unlocked balance to an address. + +Inputs: + +* *address* - string; Destination public address. +* *account_index* - unsigned int; Sweep transactions from this account. +* *subaddr_indices* - array of unsigned int; (Optional) Sweep from this set of subaddresses in the account. +* *priority* - unsigned int; (Optional) Priority for sending the sweep transfer, partially determines fee. +* *mixin* - unsigned int; Number of outputs from the blockchain to mix with (0 means no mixing). +* *unlock_time* - unsigned int; Number of blocks before the monero can be spent (0 to not add a lock). +* *payment_id* - string; (Optional) Random 32-byte/64-character hex string to identify a transaction. +* *get_tx_keys* - boolean; (Optional) Return the transaction keys after sending. +* *below_amount* - unsigned int; (Optional) Include outputs below this amount. +* *do_not_relay* - boolean; (Optional) If true, do not relay this sweep transfer. +* *get_tx_hex* - boolean; (Optional) return the transactions as hex encoded string. +* *get_tx_metadata* - boolean; (Optional) return the transaction metadata as a string. + +Outputs: + +* *tx_hash_list* - array of string; List of transaction hashes used as transaction IDs. +* *tx_key_list* - array of string; List of public and private transaction keys. +* *tx_blob_list* - array of string; List of transactions represented as a hex blob. +* *tx_metadata_list* - array of string; Transaction metadata needed for relaying. +* *multisig_txset* - string; Set of multisig transactions in the process of being signed. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"sweep_all","params":{"address":"9sS8eRU2b5ZbN2FPSrpkiab1bjbHE5XtL6Ti6We3Fhw5aQPudRfVVypjgzKDNkxtvTQSPs122NKggb2mqcqkKSeMNVu59S","mixin":2,"unlock_time":0,"get_tx_keys":true}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "tx_hash_list": ["53a3648797d5524dd037d4105e067fa61468faecab41927fc43adbb26c202d22"], + "tx_key_list": ["e83b3b78235e36cd7e4d9695efd81a3b3e64c7d1f1ebd61892f0a7add6a50301"] + } +} +``` + +### **store** + +Save the blockchain. + +Inputs: *None*. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"store"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **get_payments** + +Get a list of incoming payments using a given payment id. + +Inputs: + +* *payment_id* - string; Payment ID used to find the payments. + +Outputs: + +* *payments* - list of: + * *payment_id* - string; Payment ID matching the input parameter. + * *tx_hash* - string; Transaction hash used as the transaction ID. + * *amount* - unsigned int; Amount for this payment. + * *block_height* - unsigned int; Height of the block that first confirmed this payment. + * *unlock_time* - unsigned int; Time (in block height) until this payment is safe to spend. + * *subaddr_index* - subaddress index: + * *major* - unsigned int; Account index for the subaddress. + * *minor* - unsigned int; Index of the subaddress in the account. + * *address* - string; Address receiving the payment; Base58 representation of the public keys. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_payments","params":{"payment_id":"4279257e0a20608e25dba8744949c9e1caff4fcdafc7d5362ecf14225f3d9030"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "payments": [{ + "amount": 10350000000000, + "block_height": 994327, + "payment_id": "4279257e0a20608e25dba8744949c9e1caff4fcdafc7d5362ecf14225f3d9030", + "tx_hash": "c391089f5b1b02067acc15294e3629a463412af1f1ed0f354113dd4467e4f6c1", + "unlock_time": 0 + "subaddr_index": { + "major": 0, + "minor": 0, + }, + "address": "427ZuEhNJQRXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQGaDsaBA" + }] + } +} +``` + + +### **get_bulk_payments** + +Get a list of incoming payments using a given payment id, or a list of payments ids, from a given height. This method is the preferred method over `get_payments` because it has the same functionality but is more extendable. Either is fine for looking up transactions by a single payment ID. + +Inputs: + +* *payment_ids* - array of: string; Payment IDs used to find the payments. +* *min_block_height* - unsigned int; The block height at which to start looking for payments. + +Outputs: + +* *payments* - list of: + * *payment_id* - string; Payment ID matching one of the input IDs. + * *tx_hash* - string; Transaction hash used as the transaction ID. + * *amount* - unsigned int; Amount for this payment. + * *block_height* - unsigned int; Height of the block that first confirmed this payment. + * *unlock_time* - unsigned int; Time (in block height) until this payment is safe to spend. + * *subaddr_index* - subaddress index: + * *major* - unsigned int; Account index for the subaddress. + * *minor* - unsigned int; Index of the subaddress in the account. + * *address* - string; Address receiving the payment; Base58 representation of the public keys. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_bulk_payments","params":{"payment_ids":["4279257e0a20608e25dba8744949c9e1caff4fcdafc7d5362ecf14225f3d9030"],"min_block_height":990000}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "payments": [{ + "amount": 10350000000000, + "block_height": 994327, + "payment_id": "4279257e0a20608e25dba8744949c9e1caff4fcdafc7d5362ecf14225f3d9030", + "tx_hash": "c391089f5b1b02067acc15294e3629a463412af1f1ed0f354113dd4467e4f6c1", + "unlock_time": 0 + "subaddr_index": { + "major": 0, + "minor": 1, + }, + "address": "88bV1uo76AaKZaWD389kCf5EfPxKFYEKUQbs9ZRJm23E2X2oYgV9bQ54FiY6hAB83aDXMUSZF6KWyfeQqzLqaAeeFrk9iic" + }] + } +} +``` + + +### **get_transfers** + +Returns a list of transfers. + +Inputs: + +* *in* - boolean; (Optional) Include incoming transfers. +* *out* - boolean; (Optional) Include outgoing transfers. +* *pending* - boolean; (Optional) Include pending transfers. +* *failed* - boolean; (Optional) Include failed transfers. +* *pool* - boolean; (Optional) Include transfers from the daemon's transaction pool. +* *filter_by_height* - boolean; (Optional) Filter transfers by block height. +* *min_height* - unsigned int; (Optional) Minimum block height to scan for transfers, if filtering by height is enabled. +* *max_height* - unsigned int; (Opional) Maximum block height to scan for transfers, if filtering by height is enabled. +* *account_index* - unsigned int; (Optional) Index of the account to query for transfers. +* *subaddr_indices* - array of unsigned int; (Optional) List of subaddress indices to query for transfers. + +Outputs: + +* *in* array of transfers: + * *txid* - string; Transaction ID for this transfer. + * *payment_id* - string; Payment ID for this transfer. + * *height* - unsigned int; Height of the first block that confirmed this transfer. + * *timestamp* - unsigned int; POSIX timestamp for when this transfer was first confirmed in a block. + * *amount* - unsigned int; Amount transferred. + * *fee* - unsigned int; Transaction fee for this transfer. + * *note* - string; Note about this transfer. + * *destinations* - array of transfer destinations: + * *amount* - unsigned int; Amount for this destination. + * *address* - string; Address for this destination. Base58 representation of the public keys. + * *type* - string; Transfer type: "in" +* *out* array of transfers: + * *txid* - string; Transaction ID for this transfer. + * *payment_id* - string; Payment ID for this transfer. + * *height* - unsigned int; Height of the first block that confirmed this transfer. + * *timestamp* - unsigned int; POSIX timestamp for when this transfer was first confirmed in a block. + * *amount* - unsigned int; Amount transferred. + * *fee* - unsigned int; Transaction fee for this transfer. + * *note* - string; Note about this transfer. + * *destinations* - array of transfer destinations: + * *amount* - unsigned int; Amount for this destination. + * *address* - string; Address for this destination. Base58 representation of the public keys. + * *type* - string; Transfer type: "out" +* *pending* array of transfers: + * *txid* - string; Transaction ID for this transfer. + * *payment_id* - string; Payment ID for this transfer. + * *height* - unsigned int; 0, this transfer is not yet confirmed in a block. + * *timestamp* - unsigned int; POSIX timestamp for when this transfer was sent. + * *amount* - unsigned int; Amount transferred. + * *fee* - unsigned int; Transaction fee for this transfer. + * *note* - string; Note about this transfer. + * *destinations* - array of transfer destinations: + * *amount* - unsigned int; Amount for this destination. + * *address* - string; Address for this destination. Base58 representation of the public keys. + * *type* - string; Transfer type: "pending" +* *failed* array of transfers: + * *txid* - string; Transaction ID for this transfer. + * *payment_id* - string; Payment ID for this transfer. + * *height* - unsigned int; 0, this transfer will not be confirmed in a block. + * *timestamp* - unsigned int; POSIX timestamp for when this transfer was sent. + * *amount* - unsigned int; Amount transferred. + * *fee* - unsigned int; Transaction fee for this transfer. + * *note* - string; Note about this transfer. + * *destinations* - array of transfer destinations: + * *amount* - unsigned int; Amount for this destination. + * *address* - string; Address for this destination. Base58 representation of the public keys. + * *type* - string; Transfer type: "failed" +* *pool* array of transfers: + * *txid* - string; Transaction ID for this transfer. + * *payment_id* - string; Payment ID for this transfer. + * *height* - unsigned int; 0, this transfer is not yet confirmed in a block. + * *timestamp* - unsigned int; POSIX timestamp for when this transfer was last seen in the transaction pool. + * *amount* - unsigned int; Amount transferred. + * *fee* - unsigned int; Transaction fee for this transfer. + * *note* - string; Note about this transfer. + * *destinations* - array of transfer destinations: + * *amount* - unsigned int; Amount for this destination. + * *address* - string; Address for this destination. Base58 representation of the public keys. + * *type* - string; Transfer type: "pool" + + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_transfers","params":{"pool":true}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "pool": [{ + "amount": 500000000000, + "fee": 0, + "height": 0, + "note": "", + "payment_id": "758d9b225fda7b7f", + "timestamp": 1488312467, + "txid": "da7301d5423efa09fabacb720002e978d114ff2db6a1546f8b820644a1b96208", + "type": "pool" + }] + } +} +``` + +### **get_transfer_by_txid** + +Show information about a transfer to/from this address. + +Inputs: + +* *txid* - string; Transaction ID used to find the transfer. +* *account_index* - unsigned int; (Optional) Index of the account to query for the transfer. + +Outputs: + +* *transfer* - JSON object containing payment information: + * *amount* - unsigned int; Amount of this transfer. + * *fee* - unsigned int; Transaction fee for this transfer. + * *height* - unsigned int; Height of the first block that confirmed this transfer. + * *note* - string; Note about this transfer. + * *payment_id* - string; Payment ID for this transfer. + * *timestamp* - unsigned int; POSIX timestamp for the block that confirmed this transfer. + * *txid* - string; Transaction ID of this transfer (same as input TXID). + * *type* - string; Type of transfer, one of the following: "in", "out", "pending", "failed", "pool" + * *destinations* - array of JSON objects containing transfer destinations: + * *amount* - unsigned int; Amount transferred to this destination. + * *address* - string; Address for this destination. Base58 representation of the public keys. + * *unlock_time* - unsigned int; Number of blocks until transfer is safely spendable. + * *subaddr_index* - JSON object containing the major & minor subaddress index: + * *major* - unsigned int; Account index for the subaddress. + * *minor* - unsigned int; Index of the subaddress under the account. + * *address* - string; Address that transferred the funds. Base58 representation of the public keys. + * *double_spend_seen* - boolean; True if the key image(s) for the transfer have been seen before. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_transfer_by_txid","params":{"txid":"f2d33ba969a09941c6671e6dfe7e9456e5f686eca72c1a94a3e63ac6d7f27baf"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "transfer": { + "amount": 10000000000000, + "fee": 0, + "height": 1316388, + "note": "", + "payment_id": "0000000000000000", + "timestamp": 1495539310, + "txid": "f2d33ba969a09941c6671e6dfe7e9456e5f686eca72c1a94a3e63ac6d7f27baf", + "type": "in" + "destinations": [ + "amount": 10000000000000, + "address": "88bV1uo76AaKZaWD389kCf5EfPxKFYEKUQbs9ZRJm23E2X2oYgV9bQ54FiY6hAB83aDXMUSZF6KWyfeQqzLqaAeeFrk9iic" + ], + "unlock_time": 0, + "subaddr_index": { + "major": 0, + "minor": 0 + }, + "address": "427ZuEhNJQRXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQGaDsaBA", + "double_spend_seen": false + } + } +} +``` + + +### **incoming_transfers** + +Return a list of incoming transfers to the wallet. + +Inputs: + +* *transfer_type* - string; "all": all the transfers, "available": only transfers which are not yet spent, OR "unavailable": only transfers which are already spent. +* *account_index* - unsigned int; (Optional) Return transfers for this account. +* *subaddr_indices* - array of unsigned int; (Optional) Return transfers sent to these subaddresses. +* *verbose* - boolean; (Optional) Enable verbose output, return key image if true. + +Outputs: + +* *transfers* - list of: + * *amount* - unsigned int; Amount of this transfer. + * *spent* - boolean; Indicates if this transfer has been spent. + * *global_index* - unsigned int; Mostly internal use, can be ignored by most users. + * *tx_hash* - string; Several incoming transfers may share the same hash if they were in the same transaction. + * *tx_size* - unsigned int; Size of transaction in bytes. + * *subaddr_index* - unsigned int; Subaddress index for incoming transfer. + * *key_image* - string; Key image for the incoming transfer's unspent output (empty unless verbose is true). + +Example (Return "all" transaction types): + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"incoming_transfers","params":{"transfer_type":"all"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "transfers": [{ + "amount": 10000000000000, + "global_index": 711506, + "spent": false, + "tx_hash": "<c391089f5b1b02067acc15294e3629a463412af1f1ed0f354113dd4467e4f6c1>", + "tx_size": 5870, + "subaddr_index": 0, + "key_image": "" + },{ + "amount": 300000000000, + "global_index": 794232, + "spent": false, + "tx_hash": "<c391089f5b1b02067acc15294e3629a463412af1f1ed0f354113dd4467e4f6c1>", + "tx_size": 5870, + "subaddr_index": 0, + "key_image": "" + },{ + "amount": 50000000000, + "global_index": 213659, + "spent": false, + "tx_hash": "<c391089f5b1b02067acc15294e3629a463412af1f1ed0f354113dd4467e4f6c1>", + "tx_size": 5870, + "subaddr_index": 0, + "key_image": "" + }] + } +} +``` + +Example (Return "available" transactions): + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"incoming_transfers","params":{"transfer_type":"available"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "transfers": [{ + "amount": 10000000000000, + "global_index": 711506, + "spent": false, + "tx_hash": "<c391089f5b1b02067acc15294e3629a463412af1f1ed0f354113dd4467e4f6c1>", + "tx_size": 5870, + "subaddr_index": 0, + "key_image": "" + },{ + "amount": 300000000000, + "global_index": 794232, + "spent": false, + "tx_hash": "<c391089f5b1b02067acc15294e3629a463412af1f1ed0f354113dd4467e4f6c1>", + "tx_size": 5870, + "subaddr_index": 0, + "key_image": "" + },{ + "amount": 50000000000, + "global_index": 213659, + "spent": false, + "tx_hash": "<c391089f5b1b02067acc15294e3629a463412af1f1ed0f354113dd4467e4f6c1>", + "tx_size": 5870, + "subaddr_index": 0, + "key_image": "" + }] + } +} +``` + +Example (Return "unavailable" transaction. Note that this particular example returns 0 unavailable transactions): + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"incoming_transfers","params":{"transfer_type":"unavailable"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **query_key** + +Return the spend or view private key. + +Inputs: + +* *key_type* - string; Which key to retrieve: "mnemonic" - the mnemonic seed (older wallets do not have one) OR "view_key" - the view key + +Outputs: + +* *key* - string; The view key will be hex encoded, while the mnemonic will be a string of words. + +Example (Query view key): + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"query_key","params":{"key_type":"view_key"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "key": "7e341d..." + } +} +``` + +Example (Query mnemonic key): + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"query_key","params":{"key_type":"mnemonic"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "key": "adapt adapt nostril ..." + } +} +``` + + +### **make_integrated_address** + +Make an integrated address from the wallet address and a payment id. + +Inputs: + +* *payment_id* - string; hex encoded; can be empty, in which case a random payment id is generated + +Outputs: + +* *integrated_address* - string + +Example (Payment ID is empty, use a random ID): + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"make_integrated_address","params":{"payment_id":""}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "integrated_address": "4BpEv3WrufwXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQQ8H2RRJveAtUeiFs6J" + } +} +``` + + +### **split_integrated_address** + +Retrieve the standard address and payment id corresponding to an integrated address. + +Inputs: + +* *integrated_address* - string + +Outputs: + +* *standard_address* - string +* *payment* - string; hex encoded + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"split_integrated_address","params":{"integrated_address": "4BpEv3WrufwXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQQ8H2RRJveAtUeiFs6J"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "payment_id": "<420fa29b2d9a49f5>", + "standard_address": "427ZuEhNJQRXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQGaDsaBA" + } +} +``` + + +### **stop_wallet** + +Stops the wallet, storing the current state. + +Inputs: *None*. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"stop_wallet"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **make_uri** + +Create a payment URI using the official URI spec. + +Inputs: + +* *address* - wallet address string +* *amount* (optional) - the integer amount to receive, in **atomic** units +* *payment_id* (optional) - 16 or 64 character hexadecimal payment id string +* *recipient_name* (optional) - string name of the payment recipient +* *tx_description* (optional) - string describing the reason for the tx + +Outputs: + +* *uri* - a string containing all the payment input information as a properly formatted payment URI + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"make_uri","params":{"address":"44AFFq5kSiGBoZ4NMDwYtN18obc8AemS33DBLWs3H7otXft3XjrpDtQGv7SqSsaBYBb98uNbr2VBBEt7f2wfn3RVGQBEP3A","amount":10,"payment_id":"0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef","tx_description":"Testing out the make_uri function.","recipient_name":"Monero Project donation address"}}' -H 'Content-Type: application/json' + +{ + "id": 0, + "jsonrpc": "2.0", + "result": { + "uri": "monero:44AFFq5kSiGBoZ4NMDwYtN18obc8AemS33DBLWs3H7otXft3XjrpDtQGv7SqSsaBYBb98uNbr2VBBEt7f2wfn3RVGQBEP3A?tx_payment_id=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef&tx_amount=0.000000000010&recipient_name=Monero%20Project%20donation%20address&tx_description=Testing%20out%20the%20make_uri%20function." + } +} +``` + + +### **parse_uri** + +Parse a payment URI to get payment information. + +Inputs: + +* *uri* - a string containing all the payment input information as a properly formatted payment URI + +Outputs: + +* *uri* - JSON object containing payment information: + * *address* - wallet address string + * *amount* - the decimal amount to receive, in **coin** units (0 if not provided) + * *payment_id* - 16 or 64 character hexadecimal payment id string (empty if not provided) + * *recipient_name* - string name of the payment recipient (empty if not provided) + * *tx_description* - string describing the reason for the tx (empty if not provided) + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"parse_uri","params":{"uri":"monero:44AFFq5kSiGBoZ4NMDwYtN18obc8AemS33DBLWs3H7otXft3XjrpDtQGv7SqSsaBYBb98uNbr2VBBEt7f2wfn3RVGQBEP3A?tx_payment_id=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef&tx_amount=0.000000000010&recipient_name=Monero%20Project%20donation%20address&tx_description=Testing%20out%20the%20make_uri%20function."}}' -H 'Content-Type: application/json' + +{ + "id": 0, + "jsonrpc": "2.0", + "result": { + "uri": { + "address": "44AFFq5kSiGBoZ4NMDwYtN18obc8AemS33DBLWs3H7otXft3XjrpDtQGv7SqSsaBYBb98uNbr2VBBEt7f2wfn3RVGQBEP3A", + "amount": 10, + "payment_id": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef", + "recipient_name": "Monero Project donation address", + "tx_description": "Testing out the make_uri function." + } + } +} +``` + + +### **rescan_blockchain** + +Rescan blockchain from scratch. + +Inputs: *None*. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"rescan_blockchain" -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **set_tx_notes** + +Set arbitrary string notes for transactions. + +Inputs: + +* *txids* - array of string; transaction ids +* *notes* - array of string; notes for the transactions + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"set_tx_notes","params":{"txids":["6a1a100c079c236e2cbf36f7760e8ef1a9e8357c434aa790a8c78de653ec4cf2"],"notes":["This is an example"]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **get_tx_notes** + +Get string notes for transactions. + +Inputs: + +* *txids* - array of string; transaction ids + +Outputs: + +* *notes* - array of string; notes for the transactions + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_tx_notes","params":{"txids":["6a1a100c079c236e2cbf36f7760e8ef1a9e8357c434aa790a8c78de653ec4cf2"]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "notes": ["This is an example"] + } +} +``` + + +### **sign** + +Sign a string. + +Inputs: + +* *data* - string; + +Outputs: + +* *signature* - string; + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"sign","params":{"data":"This is sample data to be signed"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "signature": "SigV1Xp61ZkGguxSCHpkYEVw9eaWfRfSoAf36PCsSCApx4DUrKWHEqM9CdNwjeuhJii6LHDVDFxvTPijFsj3L8NDQp1TV" + } +} +``` + + +### **verify** + +Verify a signature on a string. + +Inputs: + +* *data* - string; +* *address* - string; +* *signature* - string; + +Outputs: + +* *good* - boolean; + +Example: + +``` +$ curl -X POST http://127.0.0.1:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"verify","params":{"data":"This is sample data to be signed","address":"9sS8eRU2b5ZbN2FPSrpkiab1bjbHE5XtL6Ti6We3Fhw5aQPudRfVVypjgzKDNkxtvTQZSPs122NKggb2mqcqkKSeMNVu59S","signature":"SigV1Xp61ZkGguxSCHpkYEVw9eaWfRfSoAf36PCsSCApx4DUrKWHEqM9CdNwjeuhJii6LHDVDFxvTPijFsj3L8NDQp1TV"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "good": true + } +} +``` + + +### **export_key_images** + +Export a signed set of key images. + +Inputs: *None*. + +Outputs: + +* *signed_key_images* - array of signed key images: + * *key_image* - string; + * *signature* - string; + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"export_key_images"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "signed_key_images": [{ + "key_image": "62b83df78baad99e23b5ad3f667bc6f8d388a13d9e84c7bb6c223a556dfd34af", + "signature": "b87b7e989aa85aa3a2a7cd8adcb3a848d3512ff718b168e15217ff3e5da29c0183c0328b97cc052fcb5ee3548aa5e41e530ba9d854199ea19d7ddaf6a54a4c0a" + }] + } +} +``` + + +### **import_key_images** + +Import signed key images list and verify their spent status. + +Inputs: + +* *signed_key_images* - array of signed key images: + * *key_image* - string; + * *signature* - string; + +Outputs: + +* *height* - unsigned int; +* *spent* - unsigned int; +* *unspent* - unsigned int; + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"import_key_images", "params":{"signed_key_images":[{"key_image":"63b83df78cafd99e23b5ad3f667bc6f8d38813d9e84c7bb6c223a556dfd34af","signature":"b87b7e989aa86aa2a7a7cd8adcb3a848d3512ff718b168e15217ff3e5da29c0183c0328b97cc052fcb5ee3548aa5e41e530ba9d854199ea19d7ddaf6a54a4c0a"},{"key_image":"44ec12fbc56c533a30b09de8ae26febd515528c4957dfe875430377a7e212b4e","signature":"91105f15be0b25bc2a94bd78a7e261608974d6d888080b9f1815655b98af190340325ea1a0840a5951dacf913d4de1b2bd33ea59c1cb7bce1b6648afa7133d03"}]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "height": 986050, + "spent": 10000100000000, + "unspent": 4979852760000 + } +} +``` + + +### **get_address_book** + +Retrieves entries from the address book. + +Inputs: + +* *entries* - array of unsigned int; indices of the requested address book entries + +Outputs: + +* *entries* - array of entries: + * *address* - string; + * *description* - string; + * *index* - unsigned int; + * *payment_id* - string; + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_address_book","params":{"entries":[1,2]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "entries": [{ + "address": "A135xq3GVMdU5qtAm4hN7zjPgz8bRaiSUQmtuDdjZ6CgXayvQruJy3WPe95qj873JhK4YdTQjoR39Leg6esznQk8PckhjRN", + "description": "", + "index": 1, + "payment_id": "0000000000000000000000000000000000000000000000000000000000000000" + },{ + "address": "A135xq3GVMdU5qtAm4hN7zjPgz8bRaiSUQmtuDdjZ6CgXayvQruJy3WPe95qj873JhK4YdTQjoR39Leg6esznQk8PckhjRN", + "description": "", + "index": 2, + "payment_id": "0000000000000000000000000000000000000000000000000000000000000000" + }] + } +} +``` + + +### **add_address_book** + +Add an entry to the address book. + +Inputs: + +* *address* - string; +* *payment_id* - (optional) string, defaults to "0000000000000000000000000000000000000000000000000000000000000000"; +* *description* - (optional) string, defaults to ""; + +Outputs: + +* *index* - unsigned int; The index of the address book entry. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"add_address_book","params":{"address":"44AFFq5kSiGBoZ4NMDwYtN18obc8AemS33DBLWs3H7otXft3XjrpDtQGv7SqSsBYBb98uNbr2VBBEt7f2wfn3RVGQBEP3A","description":"Donation address for the Monero project"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "index": 2 + } +} +``` + + +### **delete_address_book** + +Delete an entry from the address book. + +Inputs: + +* *index* - unsigned int; The index of the address book entry. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"delete_address_book","params":{"index":0}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **rescan_spent** + +Rescan the blockchain for spent outputs. + +Inputs: *None*. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"rescan_spent"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **start_mining** + +Start mining in the Monero daemon. + +Inputs: + +* *threads_count* - unsigned int; Number of threads created for mining +* *do_background_mining* - boolean; +* *ignore_battery* - boolean; + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"start_mining","params":{"threads_count":1,"do_background_mining":true,"ignore_battery":true}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **stop_mining** + +Stop mining in the Monero daemon. + +Inputs: *None*. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"stop_mining"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **get_languages** + +Get a list of available languages for your wallet's seed. + +Inputs: *None*. + +Outputs: + +* *languages* - array of string; List of available languages + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_languages"}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "languages": ["Deutsch","English","Español","Français","Italiano","Nederlands","Português","русский язык","日本語","简体中文 (中国)","Esperanto"] + } +} +``` + + +### **create_wallet** + +Create a new wallet. You need to have set the argument "--wallet-dir" when launching monero-wallet-rpc to make this work. + +Inputs: + +* *filename* - string; +* *password* - string; +* *language* - string; Language for your wallets' seed. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"create_wallet","params":{"filename":"mytestwallet","password":"mytestpassword","language":"English"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + + +### **open_wallet** + +Open a wallet. You need to have set the argument "--wallet-dir" when launching monero-wallet-rpc to make this work. + +Inputs: + +* *filename* - string; +* *password* - string; + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"open_wallet","params":{"filename":"mytestwallet","password":"mytestpassword"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + +### **get_accounts** + +Get all accounts for a wallet. Optionally filter accounts by tag. + +Inputs: + +* *tag* - string; (Optional) Tag for filtering accounts. + +Outputs: + +* *subaddress_accounts* - array of subaddress account information: + * *account_index* - unsigned int; Index of the account. + * *balance* - unsigned int; Balance of the account (locked or unlocked). + * *base_address* - string; Base64 representation of the first subaddress in the account. + * *label* - string; (Optional) Label of the account. + * *tag* - string; (Optional) Tag for filtering accounts. + * *unlocked_balance* - unsigned int; Unlocked balance for the account. +* *total_balance* - unsigned int; Total balance of the selected accounts (locked or unlocked). +* *total_unlocked_balance* - unsigned int; Total unlocked balance of the selected accounts. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_accounts","params":{"tag":"checking"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "subaddress_accounts": [{ + "account_index": 0, + "balance": 0, + "base_address": "427ZuEhNJQRXoyJAeEoBaNW56ScQaLXyyQWgxeRL9KgAUhVzkvfiELZV7fCPBuuB2CGuJiWFQjhnhhwiH1FsHYGQGaDsaBA", + "label": "Primary account", + "tag": "checking", + "unlocked_balance": 0 + },{ + "account_index": 1, + "balance": 0, + "base_address": "88bV1uo76AaKZaWD389kCf5EfPxKFYEKUQbs9ZRJm23E2X2oYgV9bQ54FiY6hAB83aDXMUSZF6KWyfeQqzLqaAeeFrk9iic", + "label": "", + "tag": "checking", + "unlocked_balance": 0 + }], + "total_balance": 0, + "total_unlocked_balance": 0 + } +} +``` + +### **create_account** + +Create a new account with an optional label. + +Inputs: + +* *label* - string; (Optional) Label for the account. + +Outputs: + +* *account_index* - unsigned int; Index of the new account. +* *address* - string; Address for this account. Base58 representation of the public keys. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"create_account","params":{"label":"Secondary account"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "account_index": 1, + "address": "88bV1uo76AaKZaWD389kCf5EfPxKFYEKUQbs9ZRJm23E2X2oYgV9bQ54FiY6hAB83aDXMUSZF6KWyfeQqzLqaAeeFrk9iic" + } +} +``` + +### **label_account** + +Label an account. + +Inputs: + +* *account_index* - unsigned int; Apply label to account at this index. +* *label* - string; Label for the account. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"label_account","params":{"account_index":0,"label":"Secondary account"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + +### **create_address** + +Create a new address for an account. Optionally, label the new address. + +Inputs: + +* *account_index* - unsigned int; Create a new address for this account. +* *label* - string; (Optional) Label for the new address. + +Outputs: + +* *address* - string; Newly created address. Base58 representation of the public keys. +* *address_index* - unsigned int; Index of the new address under the input account. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"create_address","params":{"account_index:0,"label":"Secondary account"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "address": "88bV1uo76AaKZaWD389kCf5EfPxKFYEKUQbs9ZRJm23E2X2oYgV9bQ54FiY6hAB83aDXMUSZF6KWyfeQqzLqaAeeFrk9iic", + "address_index": 1 + } +} +``` + +### **label_address** + +Label an address. + +Inputs: + +* *index* - subaddress index; JSON Object containing the major & minor address index: + * *major* - unsigned int; Account index for the subaddress. + * *minor* - unsigned int; Index of the subaddress in the account. +* *label* - string; Label for the address. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"label_address","params":{"index":{"major":0,"minor":1}},"label":"Secondary account"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + +### **get_account_tags** + +Get a list of user-defined account tags. + +Inputs: *None*. + +Outputs: + +* *account_tags* - array of account tag information: + * *tag* - string; Filter tag. + * *label* - string; Label for the tag. + * *accounts* - array of int; List of tagged account indices. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_account_tags","params":""}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + "account_tags": [{ + "accounts": [0], + "label": "", + "tag": "test" + }] + } +} +``` + +### **tag_accounts** + +Apply a filtering tag to a list of accounts. + +Inputs: + +* *tag* - string; Tag for the accounts. +* *accounts* - array of unsigned int; Tag this list of accounts. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"tag_accounts","params":{"tag":"test","accounts":[0,1]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + +### **untag_accounts** + +Remove filtering tag from a list of accounts. + +Inputs: + +* *accounts* - array of unsigned int; Remove tag from this list of accounts. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"untag_accounts","params":{"accounts":[1]}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` + +### **set_account_tag_description** + +Set description for an account tag. + +Inputs: + +* *tag* - string; Set a description for this tag. +* *description* - string; Description for the tag. + +Outputs: *None*. + +Example: + +``` +$ curl -X POST http://localhost:18082/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"set_account_tag_description","params":{"tag":"test","description":"Test accounts"}}' -H 'Content-Type: application/json' + +{ + "id": "0", + "jsonrpc": "2.0", + "result": { + } +} +``` diff --git a/_i18n/ar/resources/moneropedia/00-base-00 b/_i18n/ar/resources/moneropedia/00-base-00 new file mode 100644 index 00000000..2fea04a0 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/00-base-00 @@ -0,0 +1,10 @@ +--- +entry: "" +terms: ["", ""] +summary: "" +--- + +{% include untranslated.html %} +### The Basics + + \ No newline at end of file diff --git a/_i18n/ar/resources/moneropedia/account.md b/_i18n/ar/resources/moneropedia/account.md new file mode 100644 index 00000000..3e861ab2 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/account.md @@ -0,0 +1,82 @@ +--- +entry: "Account" +terms: ["account", "accounts", "wallet", "wallets"] +summary: "similar in function to a bank account, contains all of your sent and received transactions" +--- + +{% include untranslated.html %} +### The Basics + +Those familiar with Monero's predecessors will be more familiar with the term *wallet* to describe this. In Monero we call this an account, and it is a private account owned and operated by a Monero user. + +Your account contains all of the Monero @transactions you have sent and received. Your account balance is a sum of all the Monero you've received, less the Monero you've sent. When using Monero you may notice that your account has two balances, a locked and an unlocked balance. The unlocked balance contains funds that can be spent immediately, and the locked balance contains funds that you can't spend right now. You may receive a transaction that has an @unlock-time set, or you may have sent some Monero and are waiting for the @change to come back to your wallet, both situations that could lead to those funds being locked for a time. + +A key difference between traditional electronic currency and Monero is that your account resides only under your control, normally on your computer, and cannot be accessed by anyone else if you [practice good security](#practicing-good-security). + +### Multiple Accounts + +There are no costs attached to creating a Monero account, and there are no fees charged except for individual @transaction fees that go to @miners. + +This means that individuals can easily create a Monero account for themselves as well as a joint account to share with their partner, and individual accounts for their children. Similarly, a business could create separate accounts for each division or group. Since Monero's @transaction fees are quite low, moving funds between accounts is not an expensive exercise. + +### Cryptographic Keys + +Monero relies heavily on a cryptography principle known as *public/private key cryptography* or *asymmetric cryptography*, which is thoroughly detailed in [this Wikipedia article](https://en.wikipedia.org/wiki/Public-key_cryptography). + +Your account is based on two keys, a @spend-key and a @view-key. The @spend-key is special in that it is the single key required to spend your Monero funds, whereas the @view-key allows you to reveal your @transactions to a third party, for example for auditing or accounting purposes. These keys in your account also play an important role in Monero's @transaction's privacy. + +The private keys for both of these must be protected by you in order to retain your account privacy. On the other hand, the public keys are obviously public (they are part of your Monero account address). For normal public/private key cryptography someone could send you a private message by encrypting it with either of your public keys, and you would then be the only one able to decrypt it with your private keys. + +### Backing Up Your Account + +When you manage your own Monero Account with the private @spend-key, you are solely responsible for the security of your funds. Thankfully, Monero makes it very easy to backup your account. When creating a Monero account for the first time you will be given a unique @mnemonic-seed for your account that consists of 13 or 25 words in the language of your choosing. **This seed is the only thing you need to backup for your account**, and so it is imperative that it is written down and stored securely. Never store this seed in a form or location that would allow someone else to see it! + +``` +List of available languages for your wallet's seed: +0 : Deutsch +1 : English +2 : Español +3 : Français +4 : Italiano +5 : Nederlands +6 : Português +7 : русский язык +8 : 日本語 +9 : 简体中文 (中国) +10 : Esperanto +Enter the number corresponding to the language of your choice: 1 +Generated new wallet: 4B15ZjveuttEaTmfZjLVioPVw7bfSmRLpSgB33CJbuC6BoGtZrug9TDAmhZEWD6XoFDGz55bgzisT9Dnv61sbsA6Sa47TYu +view key: 4130fa26463d9451781771a8baa5d0b8085c47c4500cefe4746bab48f1d15903 +********************************************************************** +Your wallet has been generated. +To start synchronizing with the daemon, use "refresh" command. +Use "help" command to see the list of available commands. +Always use "exit" command when closing monero-wallet-cli to save your +current session's state. Otherwise, you might need to synchronize +your wallet again (your wallet keys are NOT at risk in any case). + +PLEASE NOTE: the following 25 words can be used to recover access to your wallet. Please write them down and store them somewhere safe and secure. Please do not store them in your email or on file storage services outside of your immediate control. + +aunt knuckle italics moisture hawk thorn iris abort +chlorine smog uphill glass aptitude nowhere sewage plywood +dual relic fierce divers anvil nodes bubble cabin abort +********************************************************************** +Starting refresh... +Refresh done, blocks received: 21939 +Balance: 0.000000000000, unlocked balance: 0.000000000000 +Background refresh thread started +[wallet 4B15Zj]: █ + +``` + +As the example above indicates, it is incredibly important to store these words in safe locations. If you are concerned about the risk of critical loss at your home, for instance, you may want to store a second copy of your seed with your attorney or in a safety deposit box. It is also recommended that it is stored in a way that does not make it obvious that it is your seed, so writing it into a letter or as part of other notes is advisable. + +### Practicing Good Security + +Over and above backing up your @mnemonic-seed so that you have access to your account in the event of critical data loss, it is also important to practice good security. Use a secure password when creating a local Monero account (not used on [MyMonero](https://mymonero.com) or other web-based account systems). + +Don't ever give your Monero account password to anyone, as this can be used to access the Monero on your computer without knowing your @mnemonic-seed. Similarly, make sure you have running and up-to-date antivirus, especially on Windows computers. Finally, be careful when clicking links in emails or on unknown and untrusted websites, as malware installed on your computer can sit and wait for you to access your Monero account before taking the funds from it. + +### Leaving Your Account to Next of Kin + +Providing access to your Monero account to your next of kin is just as easy as it is to backup your Monero account. Simply leave your @mnemonic-seed to them in your will, or store it somewhere safe where it will be given to them upon the execution of your will. A key advantage to this is that your next of kin won't have to wait for months for a third party to release the funds to them. diff --git a/_i18n/ar/resources/moneropedia/address-book.md b/_i18n/ar/resources/moneropedia/address-book.md new file mode 100644 index 00000000..cf4bcc98 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/address-book.md @@ -0,0 +1,35 @@ +--- +entry: "Address Book" +tags: ["kovri"] +terms: ["Address-Book"] +summary: "Allows you to visit I2P websites/services that have the .i2p domain" +--- + +{% include untranslated.html %} +### The Basics + +In order to browse @I2P sites or services with @Kovri, you'll need an address book. An address book will allow you to translate @I2P websites/services that use the `.i2p` [top-level domain](https://en.wikipedia.org/wiki/Top_level_domain) into an address that @I2P network will understand. + +Without an address book, you would be stuck using a @base32-address every time you visit an @I2P website/service - and that's not fun! + +### In-depth information + +Since [DNS](https://en.wikipedia.org/wiki/DNS) does not exist on the @I2P network, @Kovri also does **not** use DNS or any sort of @canonically-unique-host resolution. Instead, Kovri pairs a @locally-unique-host to a @base64-address @destination in a @subscription. Once your address book is filled with a @subscription, you can resolve your favorite `.i2p` domain site into a usable @I2P destination. + +### Creating an Address Book + +By default, your installation will come with a default public @subscription called `hosts.txt` in your @data-directory. When @Kovri starts, it loads this subscription and fetches any other subscriptions you've specified. Once loaded, your address book will be appropriately filled. For details on how to manage subscriptions, see @subscription. + +### Updating the Address Book + +Currently, there are several ways to update your address book: + +1. Use a @jump-service to insert I2P addresses into your address book +2. Use a @jump-service to copy/paste an address into your private @subscription +3. Manually add or subtract from a private @subscription + +**Note: Kovri is in heavy development. In the future there *will* be easier ways to update the address book** + +### Address Book / Naming specification + +For specification details and more, visit the [Address Book and Naming Specification](https://geti2p.net/en/docs/naming) diff --git a/_i18n/ar/resources/moneropedia/address.md b/_i18n/ar/resources/moneropedia/address.md new file mode 100644 index 00000000..c8679ab3 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/address.md @@ -0,0 +1,22 @@ +--- +entry: "Address" +terms: ["address", "addresses"] +summary: "either an alias, such as donate.getmonero.org, or a set of 95 characters starting with a 4" +--- + +{% include untranslated.html %} +### The Basics + +When you send Monero to someone you only need one piece of information, and that is their Monero address. A *raw* Monero address is a set of 95 characters starting with a '4'. The Monero donation address, for instance, is 44AFFq5kSiGBoZ4NMDwYtN18obc8AemS33DBLWs3H7otXft3XjrpDtQGv7SqSsaBYBb98uNbr2VBBEt7f2wfn3RVGQBEP3A. + +Because those addresses are long and complex, you will often encounter an @OpenAlias address instead. For example, Monero donations can be sent to donate@getmonero.org or donate.getmonero.org. + +If you would like to get an @OpenAlias address of your own then there is some information on the [OpenAlias page](/resources/openalias). + +### Integrated address + +An integrated address is an address combined with an encrypted 64-bit @payment-ID. A raw integrated address is 106 characters long. + +### In-depth Information + +The address is actually the concatenation, in Base58 format, of the *public* @spend-key and the *public* @view-key, prefixed with the network byte (the number 18 for Monero) and suffixed with the first four bytes of the Keccac-256 hash of the whole string (used as a checksum). diff --git a/_i18n/ar/resources/moneropedia/airgap.md b/_i18n/ar/resources/moneropedia/airgap.md new file mode 100644 index 00000000..73db8274 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/airgap.md @@ -0,0 +1,12 @@ +--- +entry: "Airgap" +terms: ["airgap"] +summary: "An airgap is a security measure to physically separate a computer or device from all other networks, such as the Internet." +--- + +{% include untranslated.html %} +### The Basics + +"An air gap, air wall or air gapping is a network security measure employed on one or more computers to ensure that a secure computer network is physically isolated from unsecured networks, such as the public Internet or an unsecured local area network.[2] The name arises from the technique of creating a network that is physically separated (with a conceptual air gap) from all other networks. The air gap may not be completely literal, as networks employing the use of dedicated cryptographic devices that can tunnel packets over untrusted networks while avoiding packet rate or size variation can be considered air gapped, as there is no ability for computers on opposite sides of the gap to communicate." + +Taken from https://en.wikipedia.org/wiki/Air_gap_(networking) diff --git a/_i18n/ar/resources/moneropedia/atomic-units.md b/_i18n/ar/resources/moneropedia/atomic-units.md new file mode 100644 index 00000000..b9c61ca8 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/atomic-units.md @@ -0,0 +1,12 @@ +--- +entry: "Atomic Units" +terms: ["atomic-units", "atomic-unit"] +summary: "Atomic Units refer to the smallest fraction of 1 XMR." +--- + +{% include untranslated.html %} +### The Basics + +Atomic Units refer to the smallest fraction of 1 XMR. +One atomic unit is currently 1e-12 XMR (0.000000000001 XMR, or one @piconero). +It may be changed in the future. diff --git a/_i18n/ar/resources/moneropedia/base32-address.md b/_i18n/ar/resources/moneropedia/base32-address.md new file mode 100644 index 00000000..4dbab12b --- /dev/null +++ b/_i18n/ar/resources/moneropedia/base32-address.md @@ -0,0 +1,27 @@ +--- +entry: "Base32 address" +tags: ["kovri"] +terms: ["Base32-address", "Base32-addresses"] +summary: "Base32 encoded hash of a Base64 address" +--- + +{% include untranslated.html %} +### The Basics + +A Base32 address is a shortened, encoded version of an @I2P address. The Base32 address is the first part in a `.b32.i2p` hostname. + +Example: + +`i35yftyyb22xhcvghmev46t5knefur5v66qzekkajatwfwhyklvq.b32.i2p` + +where + +`i35yftyyb22xhcvghmev46t5knefur5v66qzekkajatwfwhyklvq` is the Base32 address. + +### In-depth Information + +Ultimately, a Base32 address is a 52 character [Base32 encoded representation](https://en.wikipedia.org/wiki/Base32) of the full SHA-256 hash of an @I2P @base64-address. + +### Notes + +**Note: `.b32` is not a sub-domain of `.i2p`** diff --git a/_i18n/ar/resources/moneropedia/base64-address.md b/_i18n/ar/resources/moneropedia/base64-address.md new file mode 100644 index 00000000..c64eccb7 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/base64-address.md @@ -0,0 +1,22 @@ +--- +entry: "Base64 address" +tags: ["kovri"] +terms: ["Base64-address", "Base64-addresses"] +summary: "Base64 encoded I2P destination" +--- + +{% include untranslated.html %} +### The Basics + +A @base64-address is a 516-character [Base64 encoded](https://en.wikipedia.org/wiki/Base64) @I2P @destination. @base64-addresses are primarily used for @address-book, @jump-service, and also internally. + +Example: + +``` +AQZGLAMpI9Q0l0kmMj1vpJJYK3CjLp~fE3MfvE-e7KMKjI5cPOH6EN8m794uHJ6b09qM8mb9VEv1lVLEov~usVliTSXCSHuRBOCIwIOuDNU0AbVa4BpIx~2sU4TxKhoaA3zQ6VzINoduTdR2IJhPvI5xzezp7dR21CEQGGTbenDslXeQ4iLHFA2~bzp1f7etSl9T2W9RID-KH78sRQmzWnv7dbhNodMbpO6xsf1vENf6bMRzqD5vgHEHZu2aSoNuPyYxDU1eM6--61b2xp9mt1k3ud-5WvPVg89RaU9ugU5cxaHgR927lHMCAEU2Ax~zUb3DbrvgQBOTHnJEx2Fp7pOK~PnP6ylkYKQMfLROosLDXinxOoSKP0UYCh2WgIUPwE7WzJH3PiJVF0~WZ1dZ9mg00c~gzLgmkOxe1NpFRNg6XzoARivNVB5NuWqNxr5WKWMLBGQ9YHvHO1OHhUJTowb9X90BhtHnLK2AHwO6fV-iHWxRJyDabhSMj1kuYpVUBQAEAAcAAA== +``` + + +### In-depth Information + +See @destination for details behind @base64-address diff --git a/_i18n/ar/resources/moneropedia/block.md b/_i18n/ar/resources/moneropedia/block.md new file mode 100644 index 00000000..633001a2 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/block.md @@ -0,0 +1,16 @@ +--- +entry: "Block" +terms: ["block", "blocks"] +summary: "a container of transactions, a sequence of which forms a blockchain" +--- + +{% include untranslated.html %} +### The Basics + +A block is a container of @transactions, with a new block being added to the @blockchain once every 2 minutes (see constant `DIFFICULTY_TARGET_V2` defined as 120 seconds), on average. + +Blocks also contain a special type of transaction, the @coinbase-transaction, which add newly created Monero to the network. + +Blocks are created through the process of @mining, and the @node that successfully mines the block then broadcasts it to each of the @nodes connected to it, who subsequently re-broadcast the block until the entire Monero network has received it. + +Fake or bad blocks generally cannot be created, as @nodes that receive blocks always verify the @transactions they contain against a set of consensus rules that all nodes adhere to, including validating the cryptographic @signatures on each transaction. diff --git a/_i18n/ar/resources/moneropedia/blockchain.md b/_i18n/ar/resources/moneropedia/blockchain.md new file mode 100644 index 00000000..87630ce6 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/blockchain.md @@ -0,0 +1,13 @@ +--- +entry: "Blockchain" +terms: ["blockchain", "blockchains"] +summary: "a distributed ledger of all transactions both past and present, without revealing who the funds came from or went to" + +--- + +{% include untranslated.html %} +### The Basics +A @blockchain is a distributed database that continuously grows with a record of all of the transactions that have occurred with a given cryptocurrency. This database is often referred to as a ledger because the data contains a large list of transactions that have taken place. In Monero, these transactions are packaged together into 'blocks' every 2 minutes (on average), and all miners and nodes on the network have copies of these blocks. + +### Monero's @Blockchain +Unlike Bitcoin and other cryptocurrencies, transactions in the Monero @blockchain do not reveal where funds came from or went to, providing anonymity and making the currency completely @fungible. Additionally, the amounts of all transactions are hidden by @RingCT, a feature of Monero. For auditing or other transparency purposes a user can share a @view-key to prove they control certain amounts of Moneroj. diff --git a/_i18n/ar/resources/moneropedia/bootstrap-node.md b/_i18n/ar/resources/moneropedia/bootstrap-node.md new file mode 100644 index 00000000..a97661bc --- /dev/null +++ b/_i18n/ar/resources/moneropedia/bootstrap-node.md @@ -0,0 +1,14 @@ +--- +entry: "Bootstrap-node" +terms: ["bootstrap-node", "bootstrap-nodes"] +summary: "A node to which a daemon connects to give immediate usability to wallets while syncing" +--- + +{% include untranslated.html %} +### The Basics + +The daemon running on a local @node has to sync with other (remote) @nodes. While it is not fully synced, @wallet may still be connected to the local node. Therefore, the @wallet cannot access the @blocks that are bot yet synced on the local @node. + +To allow the @wallet to be immediately usable, the daemon on the local @node uses a bootstrap node to which the RPC request are proxying to, giving access to the missing @blocks. + +Note: the replies from the bootstrap node may be untrustworthy. diff --git a/_i18n/ar/resources/moneropedia/canonically-unique-host.md b/_i18n/ar/resources/moneropedia/canonically-unique-host.md new file mode 100644 index 00000000..fb783b74 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/canonically-unique-host.md @@ -0,0 +1,23 @@ +--- +entry: "Canonically-unique host" +tags: ["kovri"] +terms: ["Canonically-unique-host"] +summary: "A host that is canonically resolved to an address or set of addresses" +--- + +{% include untranslated.html %} +### The Basics + +A Canonically-unique host is a [FQDN](https://en.wikipedia.org/wiki/FQDN) that will canonically resolve to a designated address or set of addresses. Not to be confused with a @locally-unique-host. + +### In-depth information + +A Canonically-unique host is defined by remote authoritative sources; usually through [DNS](https://en.wikipedia.org/wiki/DNS). When resolving a peer's hostname, you will most likely use an external source for resolution unless you have the following implemented: + +- a database file similar to a [hosts file](https://en.wikipedia.org/wiki/etc/hosts) +- an internal-network resolver (which eventually pulls from external sources) + +### Notes + +- Monero primarily uses @canonically-unique-host resolution while @I2P only uses @locally-unique-host resolution. +- @I2P's and @Kovri's self-assigned top-level domain is currently `.i2p` and @Kovri intends to only process/use the `.i2p` [top-level domain](https://en.wikipedia.org/wiki/Top_level_domain) diff --git a/_i18n/ar/resources/moneropedia/change.md b/_i18n/ar/resources/moneropedia/change.md new file mode 100644 index 00000000..86c89f3b --- /dev/null +++ b/_i18n/ar/resources/moneropedia/change.md @@ -0,0 +1,16 @@ +--- +entry: "Change" +terms: ["change"] +summary: "Monero sent as part of a transaction, that returns to your account instead of going to another recipient" +--- + +{% include untranslated.html %} +### The Basics + +Monero sent as part of a transaction, that returns to your account instead of going to another recipient. + +### More Information + +The @wallet in the Monero software makes change automatically, but when you send a transaction, you are taking an input that you control and telling the Monero network what to do with it. The input is a "deposit" to your account that you are able to spend. Outputs are the part of the transaction that tells the Monero network where to send the funds. + +You might have multiple inputs in your account, in many different denominations (For example: you deposited 0.5 XMR on Friday, and 0.75 XMR on Saturday). So, when have a transaction with an input of 0.5 XMR, but you only want to send 0.1 XMR, your transaction will include a fee to pay the @miner, an output for 0.1 XMR to send to the recipient, and the rest that you want to send back to yourself will be an output back to you (this is called "change"). Once the transaction is completed, the change becomes available to you as an input that you can again split and send with a new transaction. diff --git a/_i18n/ar/resources/moneropedia/clearnet.md b/_i18n/ar/resources/moneropedia/clearnet.md new file mode 100644 index 00000000..08c10393 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/clearnet.md @@ -0,0 +1,33 @@ +--- +entry: "Clearnet" +tags: ["kovri"] +terms: ["Clearnet"] +summary: "The Internet in which anonymous overlay networks are built upon" +--- + +{% include untranslated.html %} +### The Basics + +When you use the Internet for things like news, email, social media, and even Monero, you are most likely using a clearnet connection. This means that *all* of your connections can be tracked, traced, and monitored by: + +- your [ISP](https://en.wikipedia.org/wiki/ISP) +- the website/service/person you're communicating with +- possibly a [Five Eyes](https://en.wikipedia.org/wiki/5_Eyes) capable entity + +and even if you use [HTTPS](https://en.wikipedia.org/wiki/HTTPS) or similar (which *encrypts* your transmission), your route is not hidden nor is it anonymous, thus; it is in the *clear*. + +### In-depth information + +Since a traditional [VPN](https://en.wikipedia.org/wiki/VPN) cannot save you from clearnet (as you are still using *clearnet* (though you are more proxied than without a VPN)), you should use an *anonymous overlay network* to avoid using clearnet directly: + +- @Kovri +- @Java-I2P +- [Tor](https://torproject.org/) + +These technologies protect you from clearnet by building an anonymous network **over** clearnet to keep your transmissions both encrypted **and** anonymous. + +Here is an accurate, [interactive diagram](https://www.eff.org/pages/tor-and-https) provided by the [EFF](https://www.eff.org/) which describes *clearnet* as it relates to **Tor**. The concept also (somewhat) applies to @Kovri and @I2P in terms of anonymity with the exception that: + +- @Kovri does not use exit nodes when connecting to an @eepsite +- Your traffic never need to leave the @I2P network +- You do not need HTTPS to use @Kovri (with the exception of @reseed) diff --git a/_i18n/ar/resources/moneropedia/coinbase.md b/_i18n/ar/resources/moneropedia/coinbase.md new file mode 100644 index 00000000..ec318e47 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/coinbase.md @@ -0,0 +1,10 @@ +--- +entry: "Coinbase Transaction" +terms: ["coinbase-transaction"] +summary: "a special type of transaction included in each block, which contains a small amount of Monero sent to the miner as a reward for their mining work" +--- + +{% include untranslated.html %} +### The Basics + +A special type of transaction included in each block, which contains a small amount of Monero sent to the miner as a reward for their mining work. \ No newline at end of file diff --git a/_i18n/ar/resources/moneropedia/consensus.md b/_i18n/ar/resources/moneropedia/consensus.md new file mode 100644 index 00000000..5c01bf99 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/consensus.md @@ -0,0 +1,10 @@ +--- +entry: "Consensus" +terms: ["consensus", "consensus-network"] +summary: "consensus describes a property of distributed networks like Monero where most of the participants follow the rules, and thus reject bad participants" +--- + +{% include untranslated.html %} +### The Basics + +Consensus describes a property of distributed networks like Monero where most of the participants follow the rules, and thus reject bad participants. \ No newline at end of file diff --git a/_i18n/ar/resources/moneropedia/cryptocurrency.md b/_i18n/ar/resources/moneropedia/cryptocurrency.md new file mode 100644 index 00000000..67da4cea --- /dev/null +++ b/_i18n/ar/resources/moneropedia/cryptocurrency.md @@ -0,0 +1,22 @@ +--- +entry: "Cryptocurrency" +terms: ["cryptocurrency", "cryptocurrencies", "altcoin", "altcoins"] +summary: "a digital currency in which encryption techniques are used to regulate the generation of units of currency and verify the transfer of funds, usually operating independently of a central bank" +--- + +{% include untranslated.html %} +### The Basics + +A digital currency in which encryption techniques are used to regulate the generation of units of currency and verify the transfer of funds, usually operating independently of a central bank. + +### More Information + +Cryptocurrency is the generic term for a large set of digital assets that use encryption techniques to generate units of currency, verify the transactions, and transfer value. Generally, cryptocurrencies are considered to be decentralized. Cryptocurrency should not be confused with virtual currency which is a type of digital money that is usually controlled by its creators or developers. Some examples of virtual currency are gametime in World of Warcraft, ROBUX in Roblox, reward points programs, or Ripple, all of which can be exchanged for currency or cash value, but are not considered cryptocurrency because they are centalized and controlled/issued by a single entity. + +Monero is one of many cryptocurrencies currently available. Other examples are Bitcoin, Litecoin, Dogecoin, Dash, Zcash, etc, but nearly all other cryptocurrencies lack features that make them a true money (most importantly @fungibility which is a requirement for it to be a store-of-value). + +Not all cryptocurrencies operate the same, but they usually share the properties of decentralization, encryption, and the ability to send and receive transactions. Most are irreversible, pseudonymous, global, and permissionless. Most aim to be a store-of-value or be digital cash that allows you to transact. + +Most cryptocurrencies (including Monero) use a distributed ledger (called a @blockchain) to keep track of previous transactions. The blockchain serves to tell other users on the network that transactions have happened. There are many different ways for cryptocurrencies to create their blockchain, and not all are the same. Monero uses proof-of-work to craft blocks, where other cryptocurrencies may use proof-of-stake or other consolidated methods. + +Ultimately, cryptocurrency is an attempt to create trustless value; that is free from borders, governments, and banks. Whether that be to transact or to be digital gold is up to the users of each. diff --git a/_i18n/ar/resources/moneropedia/data-directory.md b/_i18n/ar/resources/moneropedia/data-directory.md new file mode 100644 index 00000000..8dee1f03 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/data-directory.md @@ -0,0 +1,22 @@ +--- +entry: "Data Directory" +tags: ["kovri"] +terms: ["Data-Directory"] +summary: "Where essential kovri data for runtime is stored" +--- + +{% include untranslated.html %} +### The Basics + +Depending on your OS, @Kovri currently stores all run-time data in the following directory: + +- Linux/FreeBSD: + - `$HOME/.kovri` + +- OSX: + - `$HOME/Library/Application\ Support/Kovri` + +- Windows: + - `"$APPDATA"\\Kovri` + +This includes all configuration files, @address-book, certificates, and resources. diff --git a/_i18n/ar/resources/moneropedia/denominations.md b/_i18n/ar/resources/moneropedia/denominations.md new file mode 100644 index 00000000..8c1d47db --- /dev/null +++ b/_i18n/ar/resources/moneropedia/denominations.md @@ -0,0 +1,40 @@ +--- +entry: "Denominations" +terms: ["denominations", "subunits", "tacoshi", "piconero", "nanonero", "micronero", "millinero", "centinero", "decinero","decanero","hectonero","kilonero","meganero","giganero"] +summary: "A denomination is a proper description of a currency amount. It is oftentimes a sub-unit of the currency. For example, traditionally a cent is 1/100th of a particular unit of currency.)" +--- + +{% include untranslated.html %} +### The Basics + +A denomination is a proper description of a currency amount. It is oftentimes a sub-unit of the currency. For example, traditionally a cent is 1/100th of a particular unit of currency.). + +Monero denomination names add SI prefixes after dropping the initial "mo" for ease of use. Actually, the smallest unit of Monero is 1 piconero (0.000000000001 XMR). + +### Denominations of Monero + +|------------+----------+-------------------| +| Name | Base 10 | Amount | +|-----------:|:--------:| -----------------:| +| piconero | 10^-12 | 0.000000000001 | +| nanonero | 10^-9 | 0.000000001 | +| micronero | 10^-6 | 0.000001 | +| millinero | 10^-3 | 0.001 | +| centinero | 10^-2 | 0.01 | +| decinero | 10^-1 | 0.1 | +|============+==========+===================| +| **monero** | **10^0** | **1** | +|============+==========+===================| +| decanero | 10^1 | 10 | +| hectonero | 10^2 | 100 | +| kilonero | 10^3 | 1,000 | +| meganero | 10^6 | 1,000,000 | +|------------+----------+-------------------| + +### In-depth Information + +Support for input using SI prefixes was [added to the Monero codebase](https://github.com/monero-project/monero/pull/1826) on March 3, 2017 by [Moneromooo](https://github.com/moneromooo-monero). The smallest unit of Monero (10^-12 XMR) was originally called a tacoshi in honor of user [Tacotime](https://bitcointalk.org/index.php?action=profile;u=19270), an early Monero contributor and was later renamed for ease of use and consistancy. + +### Monerod Implementation + +The smallest fraction of Monero in the current monerod implementation is also known as the @atomic-unit, which is currently one piconero. diff --git a/_i18n/ar/resources/moneropedia/destination.md b/_i18n/ar/resources/moneropedia/destination.md new file mode 100644 index 00000000..dba72458 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/destination.md @@ -0,0 +1,19 @@ +--- +entry: "Destination" +tags: ["kovri"] +terms: ["Destination", "Destinations"] +summary: "A in-net address that serves as a final endpoint (either local or remote)" +--- + +{% include untranslated.html %} +### The Basics + +A @destination is the @I2P @in-net address of the final endpoint you are trying to connect to (example: an @I2P website, service, or Monero node). This can also include a *local destination* of which *other* peers need to connect to in order to make contact for communication (similar to how, in @clearnet, your IP address is given to a website when you connect so it knows *where* to send the information back to). + +### In-depth Information + +An @I2P destination can be encoded into a @base32-address or @base64-address. Most users will only care about @base32-addresses or a `.i2p` hostname while, internally, @Kovri / @I2P @address-book uses @base64-addresses. Ultimately, all @destinations in @I2P are 516-byte (or longer) keys: + +`256-byte public key + 128-byte signing key + a null certificate = 516 bytes in Base64 representation` + +Note: certificates are not used now but, if they were, the keys would be longer. diff --git a/_i18n/ar/resources/moneropedia/eepsite.md b/_i18n/ar/resources/moneropedia/eepsite.md new file mode 100644 index 00000000..f1cd9cf0 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/eepsite.md @@ -0,0 +1,30 @@ +--- +entry: "Eepsite" +tags: ["kovri"] +terms: ["Eepsite", "Hidden-Service", "Garlic-Site", "Garlic-Service"] +summary: "A website or service hosted within the I2P network" +--- + +{% include untranslated.html %} +### The Basics + +Is it [**EEP!** *(in response to the site's content)*](https://en.wikipedia.org/wiki/Onomatopoeia), or **end-to-end protocol**, or something else entirely different? + +While the original definition of eepsite has been lost with time, its use-case remains: an eepsite is a website or service that is hosted within (and only accessible by) the @I2P network. + +### In-depth Information + +Alternate names include: + +1. *Hidden Service* + - because the site/service is *hidden* within the @I2P network and can only be visited within the network +2. *Garlic Site* + - because the website utilizes @I2P's @garlic-routing technology as a means of communicating with a client + - because the service is hosted as a website and not any other type of service +3. *Garlic Service* + - because the service utilizes @I2P's @garlic-routing technology as a means of communicating with a client + - because the service is specific to services like IRC, email, or a Monero peer (but may also include websites) + +### Notes + +To learn how to setup an Eepsite (Hidden Service, Garlic Site, Garlic Service) visit the @Kovri [user-guide](https://github.com/monero-project/kovri/blob/master/doc/USER_GUIDE.md). diff --git a/_i18n/ar/resources/moneropedia/encryption.md b/_i18n/ar/resources/moneropedia/encryption.md new file mode 100644 index 00000000..00ca1f42 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/encryption.md @@ -0,0 +1,35 @@ +--- +entry: "Encryption" +tags: ["kovri"] +terms: ["encryption", "encrypted", "encrypting", "decryption", "decrypted", "decrypting"] +summary: "The process of encoding messages or information in a way that only authorized parties can decode and read" +--- + +{% include untranslated.html %} +### The Basics + +From [Encryption](https://en.wikipedia.org/wiki/Encryption): + +> +In cryptography, encryption is the process of encoding messages or information in such a way that only authorized parties can decode and read what is sent. Encryption does not of itself prevent interception, but denies the message content to the interceptor. + +### In-depth information + +From [Encryption](https://en.wikipedia.org/wiki/Encryption): + +> + In an encryption scheme, the intended communication information or message (referred to as *plaintext*), is encrypted using an encryption algorithm, generating ciphertext that can only be read if decrypted. For technical reasons, an encryption scheme usually uses a pseudo-random encryption key generated by an algorithm. It is in principle possible to decrypt the message without possessing the key, but, for a well-designed encryption scheme, large computational resources and skill are required. An authorized recipient can easily decrypt the message with the key provided by the originator to recipients, but not to unauthorized interceptors. + +> +The purpose of encryption is to ensure that only somebody who is authorized to access data (e.g. a text message or a file), will be able to read it, using the decryption key. Somebody who is not authorized can be excluded, because he or she does not have the required key, without which it is impossible to read the encrypted information. + +### Kovri + +@Kovri implements various types of encryption in *at least* 4 essential capacities: + +- @Reseed for bootstrapping +- @Garlic-routing: three layers of encryption (@garlic-encryption) are used to verify the secure delivery of @messages to the recipient/peer/@destination +- @Tunnel encryption: garlic messages are passed through a @tunnel and encrypted by the @tunnel gateway to the @tunnel endpoint +- @Transport layer encryption prevents the ability to decrypt @messages at the [media layer](https://en.wikipedia.org/wiki/OSI_model) + +For details on the types of encryption and cryptographic @signatures used in @Kovri and @I2P, visit @Java-I2P's [Cryptography](https://geti2p.net/spec/cryptography) diff --git a/_i18n/ar/resources/moneropedia/floodfill.md b/_i18n/ar/resources/moneropedia/floodfill.md new file mode 100644 index 00000000..1343ef18 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/floodfill.md @@ -0,0 +1,15 @@ +--- +entry: "Floodfill" +tags: ["kovri"] +terms: ["Floodfill"] +summary: "An I2P router which maintains a distributed network-database" +--- + +{% include untranslated.html %} +### The Basics + +By actively managing a distributed network-database, a router with *floodfill* capability has the ability to help maintain network stability and resiliancy while also being decentralized and trust-less. + +### In-depth information + +Though floodfill itself is a simple storage system, the technical underpinnings of floodfill as it relates to @network-database and other protocols within @I2P are much more complex. Visit the [Network Database](https://geti2p.net/en/docs/how/network-database) page for details. diff --git a/_i18n/ar/resources/moneropedia/fluffyblocks.md b/_i18n/ar/resources/moneropedia/fluffyblocks.md new file mode 100644 index 00000000..b04e7f3a --- /dev/null +++ b/_i18n/ar/resources/moneropedia/fluffyblocks.md @@ -0,0 +1,19 @@ +--- +entry: "Fluffy Blocks" +terms: ["fluffy blocks", "fluffyblocks"] +summary: "a way of saving bandwidth when sending new blocks around the network" +--- + +{% include untranslated.html %} +### The Basics + +A @block is made up of a header and @transactions. Fluffy Blocks only contain +a header, a list of transaction indices, and any transactions that the node +recieving the block may be missing. This saves bandwidth because nodes might +already know about most or all of the transactions in the block and they don't +need to be sent them again. + +### See Also + +* [BIP152 "Compact Block Relay"](https://github.com/bitcoin/bips/blob/master/bip-0152.mediawiki) +* [Xthin](https://github.com/BitcoinUnlimited/BitcoinUnlimited/blob/release/doc/bu-xthin-protocol.md) diff --git a/_i18n/ar/resources/moneropedia/fungibility.md b/_i18n/ar/resources/moneropedia/fungibility.md new file mode 100644 index 00000000..eeaca872 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/fungibility.md @@ -0,0 +1,17 @@ +--- +entry: "Fungibility" +terms: ["fungibility", "fungible"] +summary: "property of a currency whereby two units can be substituted in place of one another" +--- + +{% include untranslated.html %} +### The Basics + +Property of a currency whereby two units can be substituted in place of one another. + +Fungibility means that two units of a currency can be mutually substituted and the substituted currency is equal to another unit of the same size. For example, two $10 bills can be exchanged and they are functionally identical to any other $10 bill in circulation (although $10 bills have unique ID numbers and are therefore not completely fungible). Gold is probably a closer example of true fungibility, where any 1 oz. of gold of the same grade is worth the same as another 1 oz. of gold. Monero is fungible due to the nature of the currency which provides no way to link transactions together nor trace the history of any particular XMR. 1 XMR is functionally identical to any other 1 XMR. + +Fungibility is an advantage Monero has over Bitcoin and almost every other cryptocurrency, due to the privacy inherent in the Monero @blockchain and the permanently traceable nature of the Bitcoin blockchain. With Bitcoin, any BTC can be tracked by anyone back to its creation @coinbase-transaction. Therefore, if a coin has been used for an illegal purpose in the past, this history will be contained in the @blockchain in perpetuity. This lack of fungibility means that certain businesses will be obligated to avoid accepting BTC that have been previously used for purposes which are illegal, or simply run afoul of their Terms of Service. Currently some large Bitcoin companies are blocking, suspending, or closing accounts that have received Bitcoin used in online gambling or other purposes deemed unsavory by said companies. + +Monero has been built specifically to address the problem of traceability and non-fungibility inherent in other cryptocurrencies. By having completely private transactions Monero is truly fungible and there can be no blacklisting of certain XMR, while at the same time providing all the benefits of a secure, decentralized, permanent blockchain. + diff --git a/_i18n/ar/resources/moneropedia/garlic-encryption.md b/_i18n/ar/resources/moneropedia/garlic-encryption.md new file mode 100644 index 00000000..30eef657 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/garlic-encryption.md @@ -0,0 +1,25 @@ +--- +entry: "Garlic-Encryption" +tags: ["kovri"] +terms: ["Garlic-Encryption", "Layered-Encryption"] +summary: "Layered encryption as implemented in Kovri / I2P" +--- + +{% include untranslated.html %} +### The Basics + +@garlic-encryption is @I2P's implementation of @message based @layered-encryption (similar to flow-based [Onion-Routing](https://en.wikipedia.org/wiki/Onion_routing)). + +By @encrypting @messages in layers, this allows a @message to be routed through a sequence of proxies without allowing the proxies (or any intermediaries) to read the contents of the @message. @Layered-Encryption is a fundamental feature in @Kovri, @I2P, and [Tor](https://torproject.org) and is the cornerstone for securing anonymity within these overlay-networks. + +### In-depth information + +For @garlic-encryption, the primary difference between @Kovri/@I2P and Tor is: + +- @Kovri/@I2P bundles multiple @messages together to form garlic "cloves" + - any number of messages can be contained in a "clove" instead of *only* a single message +- @Kovri/@I2P uses [ElGamal](https://en.wikipedia.org/wiki/ElGamal)/[AES](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard) @encryption for @messages and @transports + +### Notes + +For details, see @garlic-routing. diff --git a/_i18n/ar/resources/moneropedia/garlic-routing.md b/_i18n/ar/resources/moneropedia/garlic-routing.md new file mode 100644 index 00000000..c55f5363 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/garlic-routing.md @@ -0,0 +1,45 @@ +--- +entry: "Garlic Routing" +tags: ["kovri"] +terms: ["Garlic-Routing"] +summary: "Routing technology as implemented in Kovri" +--- + +{% include untranslated.html %} +### The Basics + +The term *@garlic-routing* has a diverse history of varying interpretations. As it currently stands, Monero defines *@garlic-routing* as the method in which @Kovri and @I2P create a @message-based anonymous overlay network of Internet peers. + +The @Garlic-Encryption of @Garlic-Routing is similar to the @Layered-Encryption of [Onion Routing](https://en.wikipedia.org/wiki/Onion_routing) and effectively conceals the IP address of the sender and secures information sent from the sender to its @destination (and vice-versa). + +### History + +In written form, the term *@garlic-routing* can be seen as early as June of 2000 in Roger Dingledine's [Free Haven Master's thesis](http://www.freehaven.net/papers.html) (Section 8.1.1) as derived from the term Onion Routing. + +As recent as October of 2016, [#tor-dev](https://oftc.net/WebChat/) has offered insight into the creation of the term *@garlic-routing*: + +[Nick Mathewson](https://en.wikipedia.org/wiki/The_Tor_Project,_Inc): +>[I think that there was some attempt to come up with a plant whose structure resembled the 'leaky-pipe' topology of tor, but I don't believe we ever settled on one.] + +[Roger Dingledine](https://en.wikipedia.org/wiki/Roger_Dingledine): +>during the free haven brainstorming, there was a moment where we described a routing mechanism, and somebody said "garlic routing!", and everybody laughed. +so we for sure thought we had invented the name, at the time. + +*Note: permission to use the aforementioned quotes was granted by Nick Mathewson and Roger Dingledine* + +### In-depth Information + +In technical terms, for @Kovri and @I2P, *@garlic-routing* translates to any/all of the following: + +- @Layered-Encryption (similar to the @layered-encryption in Onion Routing) +- Bundling multiple @messages together (garlic cloves) +- ElGamal/AES @encryption + +*Note: though [Tor](https://torproject.org/) uses @layered-encryption, Tor does not use ElGamal and is not message-based.* + +**Read more in @garlic-encryption.** + +### Notes + +- In terms of Onion/Garlic Routing, another way to envision layered @encryption is by replacing the onion/garlic with a [Matryoshka doll](https://en.wikipedia.org/wiki/Matryoshka_doll) - with each outer/inner doll having a lock and public key to the next/previous doll +- For more technical details on Garlic Routing, read the @Java-I2P entry on [Garlic Routing](https://geti2p.net/en/docs/how/garlic-routing) diff --git a/_i18n/ar/resources/moneropedia/i2np.md b/_i18n/ar/resources/moneropedia/i2np.md new file mode 100644 index 00000000..d0ea8751 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/i2np.md @@ -0,0 +1,28 @@ +--- +entry: "I2NP" +tags: ["kovri"] +terms: ["I2NP"] +summary: "The I2P Network Protocol: the mechanism in which I2NP messages are sent over the I2P network" +--- + +{% include untranslated.html %} +### The Basics + +From @Java-I2P: + +> +@I2NP manages the routing and mixing of messages between routers, as well as the selection of what transports to use when communicating with a peer for which there are multiple common transports supported + +### In-depth information + +From @Java-I2P: + +> +@I2NP (@I2P Network Protocol) @messages can be used for one-hop, router-to-router, point-to-point @messages. By @encrypting and wrapping @messages in other @messages, they can be sent in a secure way through multiple hops to the ultimate @destination. @I2NP does not specify nor require any particular @transport layer but does require at least one @transport in use. + +> +Whenever a @destination wants to send a message to to another @destination, it provides its local router with both the @destination structure and the raw bytes of the message to be sent. The router then determines where to send it, delivers it through outbound @tunnels, instructing the end point to pass it along to the appropriate inbound @tunnel, where it is passed along again to that @tunnel's end point and made available to the target for reception. + +### Notes + +Read more about the @I2NP [protocol](https://geti2p.net/en/docs/protocol/i2np) and [specification](https://geti2p.net/spec/i2np). diff --git a/_i18n/ar/resources/moneropedia/i2p.md b/_i18n/ar/resources/moneropedia/i2p.md new file mode 100644 index 00000000..2dbe44c3 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/i2p.md @@ -0,0 +1,31 @@ +--- +entry: "I2P" +tags: ["kovri"] +terms: ["I2P"] +summary: "The Invisible Internet Project: an anonymizing overlay network" +--- + +{% include untranslated.html %} +### Monero + +For Monero's implementation of @I2P, see @Kovri. For a comparison of @I2P to [Tor](https://torproject.org/), read the [Comparison](https://geti2p.net/en/comparison/tor) page. + +### The Basics + +From @Java-I2P: + +>The I2P network provides strong privacy protections for communication over the Internet. Many activities that would risk your privacy on the public Internet can be conducted anonymously inside I2P. + +### In-depth information + +From @Java-I2P: + +>I2P is an anonymous overlay network - a network within a network. It is intended to protect communication from dragnet surveillance and monitoring by third parties such as ISPs. + +>I2P is used by many people who care about their privacy: activists, oppressed people, journalists and whistleblowers, as well as the average person. + +>No network can be "perfectly anonymous". The continued goal of I2P is to make attacks more and more difficult to mount. Its anonymity will get stronger as the size of the network increases and with ongoing academic review. + +### Notes + +@I2P documentation and specifications are available [here](https://geti2p.net/docs/). diff --git a/_i18n/ar/resources/moneropedia/i2pcontrol.md b/_i18n/ar/resources/moneropedia/i2pcontrol.md new file mode 100644 index 00000000..a3f2ffb3 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/i2pcontrol.md @@ -0,0 +1,17 @@ +--- +entry: "I2PControl" +tags: ["kovri"] +terms: ["I2PControl"] +summary: "An API inteface for Kovri and Java-I2P that allows simple remote control" +--- + +{% include untranslated.html %} +### The Basics + +@I2Pcontrol is a [JSONRPC2](https://en.wikipedia.org/wiki/JSON-RPC) [API](https://en.wikipedia.org/wiki/Application_programming_interface) for @Kovri and @Java-I2P which allows an @I2PControl client to remote control/monitor a running instance. + +Two available @I2PControl clients are: [qtoopie](https://github.com/EinMByte/qtoopie) (C++ client) and [itoopie](https://github.com/i2p/i2p.itoopie) (Java client). Read `kovri.conf` to configure @I2PControl for @Kovri. + +### In-depth information + +Details and specification available on the [I2PControl](https://geti2p.net/en/docs/api/i2pcontrol) page. diff --git a/_i18n/ar/resources/moneropedia/in-net.md b/_i18n/ar/resources/moneropedia/in-net.md new file mode 100644 index 00000000..4c7e2265 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/in-net.md @@ -0,0 +1,15 @@ +--- +entry: "In-net" +tags: ["kovri"] +terms: ["In-net"] +summary: "Within the I2P network" +--- + +{% include untranslated.html %} +### The Basics + +**In-net** is a [colloquial](https://en.wikipedia.org/wiki/Colloquial) term of which describes activities, protocols, or functionality that exist *only* within the @I2P network. + +### In-depth information + +Example: *in-net download* would be defined as downloading *only* within @I2P. diff --git a/_i18n/ar/resources/moneropedia/java-i2p.md b/_i18n/ar/resources/moneropedia/java-i2p.md new file mode 100644 index 00000000..ad62a227 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/java-i2p.md @@ -0,0 +1,15 @@ +--- +entry: "Java I2P" +tags: ["kovri"] +terms: ["Java-I2P"] +summary: "The original implementation of I2P - written in Java" +--- + +{% include untranslated.html %} +### The Basics + +The term "Java I2P" is often used to describe the original @I2P implementation currently most known and used today. There are various other @I2P implementations, including @Kovri; all of which look up to the original Java implementation. + +### Notes + +To download/learn more about the Java implementation, visit their [website](https://geti2p.net/). diff --git a/_i18n/ar/resources/moneropedia/jump-service.md b/_i18n/ar/resources/moneropedia/jump-service.md new file mode 100644 index 00000000..d508d24f --- /dev/null +++ b/_i18n/ar/resources/moneropedia/jump-service.md @@ -0,0 +1,34 @@ +--- +entry: "Jump Service" +tags: ["kovri"] +terms: ["Jump-Service"] +summary: "An I2P website service that adds addresses to your address book" +--- + +{% include untranslated.html %} +### The Basics + +In your @I2P configured web browser, you can use a Jump Service to *jump* to an @I2P address that you don't have in your @address-book. Once you've *jumped* to the address, the address will be saved into your @address-book. + +### In-depth Information + +In an @I2P configured browser, visit: http://stats.i2p/i2p/lookup.html (courtesy of @Java-I2P's lead developer *zzz*) + +Then, you'll have two options: + +1. *Hostname lookup* the address you wish to visit and then manually copy/paste the result +2. *Jump* to the @I2P website by entering the @I2P hostname (**recommended**) + +### Using hostname lookup + +For example, entering `pinkpaste.i2p` into the *Hostname lookup* box (and then submitting) will return: + +``` +pinkpaste.i2p=m-HrPrIAsdxts0WM~P4mE8mt9P7g-QTaBvu7Gc6Nl0UX7Vwck-i~RvOPfK6W~kfdRvwhNTqevkBL2UF5l36We02Aiywu7kB2xOHRkze68h-Tg2ewvRVwokohguCD2G3wwAEz~7FVda2avYDCb9-N6TfuzxKLnmhPMvbNSjGL7ZsD2p-h207R3-2kvuMV9bfu-K~w9NI9XJhIyufvUnFYc2jnTVg8PbaR4UP57cNaOO2YIMPkbr6~yTcIu9B1sUfHK6-N~6virQDOxW4M-62rjnZkLpaCtkOsXslmCwZI--TkZ6hKi1kXZvNmJRE1rYfffYRFn38zhaqszeETX8HiIvahZhXF5fNumBziYdmLdw8hkuN1A~emU6Xz9g~a1Ixfsq1Qr~guYoOtaw-0rOFxNRS9yMehE-2LCb8c-cAg6z5OdlN4qJDl~ZHgru4d~EHp~BpAK3v7u2Gi-8l1ygVW-1CHVna~fwnbOPN3ANPwh6~~yUit0Cx1f54XiNRn6-nPBQAEAAcAAA== +``` + +Copy/paste this host=@base64-address pairing into your **private** @subscription. + +### Directly jumping + +For example, entering `pinkpaste.i2p` into the *Jump* box (and then submitting) will automatically redirect you to the website **and** insert the @locally-unique-host into @address-book. diff --git a/_i18n/ar/resources/moneropedia/kovri.md b/_i18n/ar/resources/moneropedia/kovri.md new file mode 100644 index 00000000..657e3502 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/kovri.md @@ -0,0 +1,62 @@ +--- +entry: "Kovri" +tags: ["kovri"] +terms: ["Kovri"] +summary: "Monero's C++ router implementation of the I2P network" +--- + +{% include untranslated.html %} +### The Basics + +[Kovri](https://github.com/monero-project/kovri/) is a C++ implementation of the @I2P network. @Kovri is currently in heavy, active development and not yet integrated with Monero. When Kovri is integrated into your Monero @node, your transactions will be more secure than ever before. + +### In-depth information + +Kovri will protect you and Monero from: + +- @Node partitioning attacks +- Associations between a particular txid and your IP address +- Mining and/or running a node in highly adversarial environments +- Metadata leakage (e.g., @OpenAlias lookups) + +...and much more. + +Read [anonimal's FFS proposal](https://forum.getmonero.org/9/work-in-progress/86967/anonimal-s-kovri-full-time-development-funding-thread) for more details and for reasoning behind the project. Also read the FAQ and User Guide in the [Kovri repository](https://github.com/monero-project/kovri/). + +### @Kovri / @I2P Terminology + +#### Client + API + +- @Address-Book +- @Base32-address +- @Base64-address +- @Canonically-unique-host +- @Eepsite (@Hidden-Service, @Garlic-Site, @Garlic-Service) +- @I2PControl +- @Jump-Service +- @Locally-unique-host +- @Reseed +- @Subscription + +#### Core + Router + +- @Clearnet +- @Data-Directory +- @Destination +- @Encryption +- @Floodfill +- @Garlic-Encryption +- @Garlic-Routing +- @I2NP +- @In-net +- @Java-I2P +- @Layered-Encryption +- @Lease +- @LeaseSet +- @Message @Messages +- @NTCP +- @Network-Database +- @Router-Info +- @SSU +- @Transports +- @Tunnel diff --git a/_i18n/ar/resources/moneropedia/lease-set.md b/_i18n/ar/resources/moneropedia/lease-set.md new file mode 100644 index 00000000..75809e9d --- /dev/null +++ b/_i18n/ar/resources/moneropedia/lease-set.md @@ -0,0 +1,25 @@ +--- +entry: "Lease-Set" +tags: ["kovri"] +terms: ["LeaseSet", "LeaseSets"] +summary: "Contains all currently authorized Leases for a particular I2P Destination" +--- + +{% include untranslated.html %} +### The Basics + +A Lease-Set contains a set of authorized @leases (and other related information) for a particular @destination. + +### In-depth information + +A Lease-Set contains: + +- all of the currently authorized @leases for a particular @destination +- the public key to which garlic messages can be encrypted (see @garlic-routing) +- the signing public key that can be used to revoke this particular version of the structure + +The Lease-Set is one of the two structures stored in the @network-database (the other being @router-info), and is keyed under the SHA256 of the contained @destination. + +### Notes + +For further details, read @Java-I2P's [LeaseSet](https://geti2p.net/en/docs/how/network-database#leaseSet) diff --git a/_i18n/ar/resources/moneropedia/lease.md b/_i18n/ar/resources/moneropedia/lease.md new file mode 100644 index 00000000..8b0cc0a6 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/lease.md @@ -0,0 +1,15 @@ +--- +entry: "Lease" +tags: ["kovri"] +terms: ["Lease", "Leases"] +summary: "Authorizes an I2P tunnel to receive messages targeting a destination" +--- + +{% include untranslated.html %} +### The Basics + +A lease defines the authorization for a particular @I2P @tunnel to receive a @messages targeting a @destination. + +### In-depth information + +For further details, read @Java-I2P's [Lease](https://geti2p.net/spec/common-structures#lease) diff --git a/_i18n/ar/resources/moneropedia/locally-unique-host.md b/_i18n/ar/resources/moneropedia/locally-unique-host.md new file mode 100644 index 00000000..3d3f527c --- /dev/null +++ b/_i18n/ar/resources/moneropedia/locally-unique-host.md @@ -0,0 +1,22 @@ +--- +entry: "Locally-unique host" +tags: ["kovri"] +terms: ["Locally-unique-host"] +summary: "A host defined by you and resolved only by you" +--- + +{% include untranslated.html %} +### The Basics + +A locally-unique host is a [FQDN](https://en.wikipedia.org/wiki/FQDN) defined by **you** and resolved only by you; similar to how a [hosts file](https://en.wikipedia.org/wiki/etc/hosts) is implemented. Not to be confused with @canonically-unique-host. + +### In-depth information + +You have the option to share your interpretation of how the host is resolved (e.g., `localhost` always resolves to `127.0.0.1`) but the resolution is not canonically enforced (e.g., someone else can map `localhost` to any arbitrary IP address). + +Hosts in a public subscription can be considered @canonically-unique-host's within the @I2P network but, ultimately, you are free to re-define them as you wish. + +### Notes + +- Monero primarily uses @canonically-unique-host resolution while @I2P only uses @locally-unique-host resolution. +- @I2P's and @Kovri's assigned top-level domain is currently `.i2p` and @Kovri intends to only process/use the `.i2p` [top-level domain](https://en.wikipedia.org/wiki/Top_level_domain) diff --git a/_i18n/ar/resources/moneropedia/message.md b/_i18n/ar/resources/moneropedia/message.md new file mode 100644 index 00000000..24a07068 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/message.md @@ -0,0 +1,33 @@ +--- +entry: "Message" +tags: ["kovri"] +terms: ["Message", "Messages"] +summary: "The mechanisms in which information travels within I2P" +--- + +{% include untranslated.html %} +### The Basics + +*Messages* (which exist on top of the @transports layer), contain varying types of information that are needed for the network but, most importantly, everything you see, do, send, or receive, will come and go in the form of *messages*. + +There are 2 essential types of *messages* in @I2P: + +- @Tunnel messages +- @I2NP messages + +Essentially: *@tunnel messages* **contain** @I2NP **message fragments** which are then [reassembled](https://geti2p.net/en/docs/tunnels/implementation) at certain points within a @tunnel's path. + +### In-depth information + +@I2NP messages have a close relationship with @tunnel @messages so it is easy to get the term *messages* confused when reading @Java-I2P specifications: + +> +1. First, the tunnel gateway accumulates a number of I2NP messages and preprocesses them into tunnel messages for delivery. +2. Next, that gateway encrypts that preprocessed data, then forwards it to the first hop. +3. That peer, and subsequent tunnel participants, unwrap a layer of the encryption, verifying that it isn't a duplicate, then forward it on to the next peer. +4. Eventually, the tunnel messages arrive at the endpoint where the I2NP messages originally bundled by the gateway are reassembled and forwarded on as requested. + +### Notes + +- @I2NP @messages need to be fragmented because they are variable in size (from 0 to almost 64 KB) and @tunnel @messages are fixed-size (approximately 1 KB). +- For details and specifications, visit the [I2NP spec](https://geti2p.net/spec/i2np) and [Tunnel Message spec](https://geti2p.net/spec/tunnel-message) diff --git a/_i18n/ar/resources/moneropedia/mining.md b/_i18n/ar/resources/moneropedia/mining.md new file mode 100644 index 00000000..f2537751 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/mining.md @@ -0,0 +1,16 @@ +--- +entry: "Mining" +terms: ["mining", "miner", "miners"] +summary: "the process of cryptographically computing a mathematical proof for a block, containing a number of transactions, which is then added to the blockchain" +--- + +{% include untranslated.html %} +### The Basics + +The process of cryptographically computing a mathematical proof for a block, containing a number of transactions, which is then added to the blockchain. + +Mining is the distributed process of confirming transactions on the public ledger of all transactions, aka @blockchain. Monero nodes use the blockchain to distinguish legitimate transactions from attempts to re-spend coins that have already been spent elsewhere. + +Monero is powered strictly by Proof of Work. It employs a mining algorithm that has the potential to be efficiently tasked to billions of existing devices (any modern x86 CPU and many GPUs). Monero uses the CryptoNight Proof of Work (PoW) algorithm, which is designed for use in ordinary CPUs and GPUs. + +The smart mining feature allows transparent CPU mining on the user's computer, far from the de facto centralization of mining farms and pool mining, pursuing Satoshi Nakamoto's original vision of a true P2P currency. diff --git a/_i18n/ar/resources/moneropedia/mnemonicseed.md b/_i18n/ar/resources/moneropedia/mnemonicseed.md new file mode 100644 index 00000000..ffd163e3 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/mnemonicseed.md @@ -0,0 +1,20 @@ +--- +entry: "Mnemonic Seed" +terms: ["mnemonic-seed", "mnemonic"] +summary: "a 13 or 25 word phrase used to backup a Monero account, available in a number of languages" +--- + +{% include untranslated.html %} +### The Basics + +A 13 or 25 word phrase used to backup a Monero account, available in a number of languages. This 25-word phrase (13 words in the case of MyMonero) has all the information needed to view and spend funds from a Monero @account. + +### In-depth Information + +In the official wallet, the mnemonic seed comprises 25 words with the last word being used as a checksum. Those words correspond to a 256-bit integer, which is the account's *private* @spend-key. The *private* @view-key is derived by hashing the private spend key with Keccak-256, producing a second 256-bit integer. The corresponding *public* keys are then derived from the private keys. + +By storing the 25 word mnemonic key in a secure location, you have a backup of your private keys and hence all of your Moneroj. Sharing this 25 word key is the equivalent of allowing another person complete access to your funds. + +It's not a good idea to store more than you want to lose in a "hot wallet" aka a wallet which is currently or has ever been connected to the internet or loaded onto any device that has or may in the future be connected to the internet or any untrusted source! + +By creating a cold, or @paper-wallet you can safely store Moneroj. diff --git a/_i18n/ar/resources/moneropedia/network-database.md b/_i18n/ar/resources/moneropedia/network-database.md new file mode 100644 index 00000000..ff9084eb --- /dev/null +++ b/_i18n/ar/resources/moneropedia/network-database.md @@ -0,0 +1,25 @@ +--- +entry: "Network Database" +tags: ["kovri"] +terms: ["Network-Database"] +summary: "A distributed database which contains needed router information so the network can stay intact" +--- + +{% include untranslated.html %} +### The Basics + +@network-database is a [distributed database](https://en.wikipedia.org/wiki/Distributed_database) which contains router information that peers must use so the network can stay intact. + +### In-depth information + +From @Java-I2P: + +> +@I2P's @network-database is a specialized distributed database, containing just two types of data - router contact information (@Router-Infos) and @destination contact information (@LeaseSets). Each piece of data is signed by the appropriate party and verified by anyone who uses or stores it. In addition, the data has liveliness information within it, allowing irrelevant entries to be dropped, newer entries to replace older ones, and protection against certain classes of attack. + +> +The @network-database is distributed with a simple technique called "@floodfill", where a subset of all routers, called "@floodfill routers", maintains the distributed database. + +### Notes + +Read [Network-Database](https://geti2p.net/en/docs/how/network-database) for details. diff --git a/_i18n/ar/resources/moneropedia/node.md b/_i18n/ar/resources/moneropedia/node.md new file mode 100644 index 00000000..66aa3844 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/node.md @@ -0,0 +1,25 @@ +--- +entry: "Node" +terms: ["node", "nodes", "full-node", "full-nodes"] +summary: "a device on the Internet running the Monero software, with a full copy of the Monero blockchain, actively assisting the Monero network" +--- + +{% include untranslated.html %} +### The Basics + +A device on the Internet running the Monero software, with a full copy of the Monero blockchain, actively assisting the Monero network. + +### More Information + +Nodes participate in the Monero network and secure @transactions by enforcing the rules of the network. Nodes download the entire @blockchain to know what transactions have taken place. Nodes assist the network by relaying transactions to other nodes on the network. Nodes may also choose to contribute to the Monero network by participating in crafting @blocks (this is called @mining). + +Mining is the process by which nodes create a block from the previously accepted block, transactions that are waiting to be processed in the transaction pool, and the @coinbase-transaction. When a node believes it has crafted a valid block it will transmit the completed block to other nodes on the network and those nodes signal agreement by working on the next block in the chain. + +The rules that nodes follow are built into the Monero software; When all nodes agree about the rules to follow this is called @consensus. Consensus is necessary for a cryptocurrency because it is how the blockchain is built; If nodes don't agree about which blocks are valid, for example people who have not updated their Monero software, those nodes that don't agree will no longer be able to participate in the Monero network. + +The Monero Core Team plans for a hardfork every 6 months, to occur in September and March of each year. At that time, if you are running a node it must be updated to the most recent version of the Monero software or it will no longer be able to participate in the network. + +--- + +##### Other Resources +1. *Fluffypony gives a great explanation of why mandatory hardforks are good for Monero.* ([Monero Missives for the Week of 2016-06-20](https://getmonero.org/2016/06/20/monero-missive-for-the-week-of-2016-06-20.html)) diff --git a/_i18n/ar/resources/moneropedia/ntcp.md b/_i18n/ar/resources/moneropedia/ntcp.md new file mode 100644 index 00000000..2cf72a63 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/ntcp.md @@ -0,0 +1,34 @@ +--- +entry: "NTCP" +tags: ["kovri"] +terms: ["NTCP"] +summary: "NIO-Based TCP (Non-blocking I/O based TCP): one of two Kovri transports" +--- + +{% include untranslated.html %} +### The Basics + +*NIO-Based TCP (Non-blocking I/O based TCP)* is one of two encrypted @transports for @Kovri. + +Similar to @SSU, @NTCP's *primary* purpose is to securely transmit @in-net @I2NP messages through @tunnels but, unlike @SSU, @NTCP functions solely over encrypted [TCP](https://en.wikipedia.org/wiki/Transmission_Control_Protocol). + +### In-depth information + + - Passes along individual @I2NP messages (both Standard and Time Sync) after: + - TCP has been established + - Establishment Sequence has been completed + - Uses the following @encryption: + - 2048-bit [Diffie-Hellman](https://en.wikipedia.org/wiki/Diffie-hellman) + - [AES-256](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard)/[CBC](https://en.wikipedia.org/wiki/Block_cipher_modes_of_operation) + - Establishment Sequence has the following *states*: + - Pre-establishment + - Establishment + - Post-establishment or "Established" + - Uses the following from the @network-database: + - Transport name: NTCP + - Host: IP (IPv4 or IPv6) or host name (shortened IPv6 address (with "::") is allowed) + - Port: 1024 - 65535 + +### Notes + +For further details, read @Java-I2P's [NTCP](https://geti2p.net/en/docs/transport/ntcp) diff --git a/_i18n/ar/resources/moneropedia/openalias.md b/_i18n/ar/resources/moneropedia/openalias.md new file mode 100644 index 00000000..da485609 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/openalias.md @@ -0,0 +1,20 @@ +--- +entry: "OpenAlias" +terms: ["OpenAlias"] +summary: "a standard that allows you to use an email or domain syntax to pay someone instead of an address, eg. donate@getmonero.org or donate.getmonero.org" +--- + +{% include untranslated.html %} +### The Basics + +The Monero Core Team released a standard called OpenAlias which permits much more human-readable addresses and "squares" the Zooko's triangle. OpenAlias can be used for any cryptocurrency and is already implemented in Monero, Bitcoin (in latest Electrum versions) and HyperStake. + +OpenAlias seeks to provide a way to simplify aliasing amidst a rapidly shifting technology climate. Users are trying to cross the bridge to private and cryptographically secure infrastructure and systems, but many of them have just barely started remembering the email addresses of their friends and family. + +As part of the ongoing development of the Monero cryptocurrency project, we asked ourselves: how can we simplify payments for users unfamiliar with cryptocurrency? Monero stealth addresses are at least 95 characters long - memorizing them is not an option, and asking someone to send a payment to <95-character-string> is only going to lead to confusion. + +At its most basic, OpenAlias is a TXT DNS record on a FQDN (fully qualified domain name). By combining this with DNS-related technologies we have created an aliasing standard that is extensible for developers, intuitive and familiar for users, and can interoperate with both centralized and decentralized domain systems. + +A standard that allows you to use an email or domain syntax to pay someone instead of an address, eg. donate@getmonero.org or donate.getmonero.org. + +More information can be found on the [OpenAlias page](/resources/openalias) or on the [OpenAlias website](https://openalias.org) diff --git a/_i18n/ar/resources/moneropedia/paperwallet.md b/_i18n/ar/resources/moneropedia/paperwallet.md new file mode 100644 index 00000000..9de00ab5 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/paperwallet.md @@ -0,0 +1,10 @@ +--- +entry: "Paper Wallet" +terms: ["paperwallet", "paperwallets", "paper-wallet", "paper-wallets"] +summary: "A paper wallet stores the information necessary to send and receive Monero" +--- + +{% include untranslated.html %} +### The Basics + +A paper wallet stores the information necessary to send and receive Monero. diff --git a/_i18n/ar/resources/moneropedia/paymentid.md b/_i18n/ar/resources/moneropedia/paymentid.md new file mode 100644 index 00000000..b1ded012 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/paymentid.md @@ -0,0 +1,27 @@ +--- +entry: "Payment ID" +terms: ["payment-ID", "payment-IDs"] +summary: "an optional flag that is added to identify transactions to merchants, consisting of 64 hexadecimal characters" +--- + +{% include untranslated.html %} +### The Basics + +Payment ID is an **arbitrary** and **optional** transaction attachment that consists of 32 bytes (64 hexadecimal characters) or 8 bytes (in the case of integrated addresses). + +The Payment ID is usually used to identify transactions to merchants and exchanges: Given the intrinsic privacy features built into Monero, where a single public address is usually used for incoming transactions, the Payment ID is especially useful to tie incoming payments with user accounts. + +### Compact Payment IDs and Integrated Addresses + +Since the 0.9 Hydrogen Helix version, Payment IDs can be encrypted and embedded in a payment address. The Payment IDs of this type should be 64-bits and are encrypted with a random one-time key known only to the sender and receiver. + +### Creating a Payment ID +It is recommended to use the official wallet's `integrated_address` command to automatically generate Integrated Addresses that contain Compact Payment IDs. If you want to use the command line, you can generate Payment IDs as follows: + +Creating a compact Payment ID for an Integrated Address: + +```# openssl rand -hex 8``` + +Creating an old-style Payment ID: + +```# openssl rand -hex 32``` diff --git a/_i18n/ar/resources/moneropedia/pedersen-commitment.md b/_i18n/ar/resources/moneropedia/pedersen-commitment.md new file mode 100644 index 00000000..c020d9b9 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/pedersen-commitment.md @@ -0,0 +1,24 @@ +--- +entry: "Pedersen Commitment" +terms: ["commitments", "commitment", "pedersen"] +summary: "Pedersen commitments are cryptographic algorythms that allow a prover to commit to a certain value without revealing it or being able to change it" +--- + +{% include untranslated.html %} +### The Basics + +Pedersen commitments are cryptographic algorythms that allow a prover to commit to a certain value without revealing it or being able to change it. + +When you spend Monero, the value of the inputs that you are spending and the value of the outputs you are sending are encrypted and opaque to everyone except the recipient of each of those outputs. Pedersen commitments allow you to send Monero without revealing the value of the transactions. Pedersen commitments also make it possible for people to verify that transactions on the blockchain are valid and not creating Monero out of thin air. + +### What It Means + +As long as the encrypted output amounts created, which include an output for the recipient and a change output back to the sender, and the unencrypted transaction fee is equal to the sum of the inputs that are being spent, it is a legitimate transaction and can be confirmed to not be creating Monero out of thin air. + +Pedersen commitments mean that the sums can be verified as being equal, but the Monero value of each of the sums and the Monero value of the inputs and outputs individually are undeterminable. Pedersen commitments also mean that even the ratio of one input to another, or one output to another is undeterminable. + +It is unclear which inputs are really being spent as the ring signature lists both the real inputs being spent and decoy inputs, therefore you don't actually know which input Pedersen commitments need to be summed. That's okay, because the @RingCT ring signature only has to prove that for one combination of the inputs the outputs are equal to the sum of the inputs. For mathematical reasons, this is impossible to forge. + +### In-depth Information + +See information in [Ring Confidential Transactions paper](https://eprint.iacr.org/2015/1098.pdf) by Shen Noether of the Monero Research Lab. diff --git a/_i18n/ar/resources/moneropedia/reseed.md b/_i18n/ar/resources/moneropedia/reseed.md new file mode 100644 index 00000000..467186bc --- /dev/null +++ b/_i18n/ar/resources/moneropedia/reseed.md @@ -0,0 +1,17 @@ +--- +entry: "Reseed" +tags: ["kovri"] +terms: ["Reseed"] +summary: "The method of which Kovri uses to bootstrap into the I2P network" +--- + +{% include untranslated.html %} +### The Basics + +When you start @Kovri for the first time (or if it's been offline for a long time), @Kovri will need a list of peers to connect to so it can [bootstrap](https://en.wikipedia.org/wiki/Bootstrap) into the @I2P network. @Kovri gets these peers from a special file stored on a reseed server. On this file are all the various pieces of information @Kovri needs in order to connect with @I2P peers. + +### In-depth information + +@Kovri has a list of [hard-coded](https://en.wikipedia.org/wiki/Hard-coded) reseed servers available to fetch from. These servers securely serve an [SU3](https://geti2p.net/spec/updates#su3) file (signed with a cryptographic @signature) over @clearnet with [HTTPS](https://en.wikipedia.org/wiki/HTTPS). This SU3 file contains information that's used to verify both the integrity of the file and its content. + +Aside from the technical elements needed to verify and process the file, the file's main contents consist of a series of @router-info files which @Kovri and @I2P routers use to locate and communicate with other @I2P peers. These peers are then stored into a @network-database. diff --git a/_i18n/ar/resources/moneropedia/ring-size.md b/_i18n/ar/resources/moneropedia/ring-size.md new file mode 100644 index 00000000..ee3a39f3 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/ring-size.md @@ -0,0 +1,11 @@ +--- +entry: "Ring Size" +terms: ["ring-size"] +summary: "total number of possible signers in a ring signature" +--- + +{% include untranslated.html %} +### The Basics +Ring size refers to the total number of possible signers in a @ring-signature. If a ring size of 4 is selected for a given @transaction, this means that there are 3 foreign outputs in addition to your “real” output. A higher ring size number will typically provide more privacy than a lower number. However, reusing an odd, recognizable ring size number for transactions could possibly make transactions stand out. + +`Ring size = foreign outputs + 1 (your output)` \ No newline at end of file diff --git a/_i18n/ar/resources/moneropedia/ringCT.md b/_i18n/ar/resources/moneropedia/ringCT.md new file mode 100644 index 00000000..5a1f51df --- /dev/null +++ b/_i18n/ar/resources/moneropedia/ringCT.md @@ -0,0 +1,15 @@ +--- +entry: "Ring CT" +terms: ["ringCT", "ring-CT"] +summary: "a way to hide the amount sent in a Monero transaction" +--- + +{% include untranslated.html %} +### The Basics +RingCT, short for Ring Confidential Transactions, is how transaction amounts are hidden in Monero. + +Ring CT was implemented in block #1220516 in January 2017. After September 2017, this feature became mandatory for all transactions on the network. + +RingCT introduces an improved version of @ring-signatures called "A Multi-layered Linkable Spontaneous Anonymous Group signature", which allows for hidden amounts, origins and destinations of transactions with reasonable efficiency and verifiable, trustless coin generation. + +For more information, please read the creator Shen Noether's paper [here](https://eprint.iacr.org/2015/1098). diff --git a/_i18n/ar/resources/moneropedia/ringsignatures.md b/_i18n/ar/resources/moneropedia/ringsignatures.md new file mode 100644 index 00000000..0bed1d21 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/ringsignatures.md @@ -0,0 +1,18 @@ +--- +entry: "Ring Signature" +terms: ["ring-signature", "ring-signatures"] +summary: "a group of cryptographic signatures with at least one real participant, but no way to tell which in the group is the real one as they all appear valid" +--- + +{% include untranslated.html %} +### The Basics + +In cryptography, a ring signature is a type of digital signature that can be performed by any member of a group of users that each have keys. Therefore, a message signed with a ring signature is endorsed by someone in a particular group of people. One of the security properties of a ring signature is that it should be computationally infeasible to determine *which* of the group members' keys was used to produce the signature. + +For instance, a ring signature could be used to provide an anonymous signature from "a high-ranking White House official", without revealing which official signed the message. Ring signatures are right for this application because the anonymity of a ring signature cannot be revoked, and because the group for a ring signature can be improvised (requires no prior setup). + +### Application to Monero + +A ring signature makes use of your @account keys and a number of public keys (also known as outputs) pulled from the @blockchain using a triangular distribution method. Over the course of time, past outputs could be used multiple times to form possible signer participants. In a "ring" of possible signers, all ring members are equal and valid. There is no way an outside observer can tell which of the possible signers in a signature group belongs to your @account. So, ring signatures ensure that transaction outputs are untraceable. Moreover, there are no @fungibility issues with Monero given that every transaction output has plausible deniability (e.g. the network can not tell which outputs are spent or unspent). + +To read how Monero gives you privacy by default (unlinkability), see @stealth-addresses. \ No newline at end of file diff --git a/_i18n/ar/resources/moneropedia/router-info.md b/_i18n/ar/resources/moneropedia/router-info.md new file mode 100644 index 00000000..19701d5e --- /dev/null +++ b/_i18n/ar/resources/moneropedia/router-info.md @@ -0,0 +1,68 @@ +--- +entry: "Router-Info" +tags: ["kovri"] +terms: ["Router-Info", "Router-infos"] +summary: "A data structure or file which contains an I2P peer's needed network information" +--- + +{% include untranslated.html %} +### The Basics + +@Router-Info is a data structure (periodically written to a [binary file](https://en.wikipedia.org/wiki/Binary_file)) which contains all needed information to locate, identify, and communicate with an @I2P peer. @Router-Info includes IP address, router identity, other misc. technical details; is needed for @network-database and is published to @floodfill routers. + +### In-depth information + +In human-readable form, Router-Info may look like this: + +``` +Identity: [RouterIdentity: +Hash: nYZ5Qe7gQ-~QgfgJVRUG4c0JnVeVqzM~duUX1EGT1ek= +Certificate: [Certificate: type: Key certificate +Crypto type: 0 +Sig type: 7 (EdDSA_SHA512_Ed25519)] +PublicKey: [PublicKey: size: 256] +SigningPublicKey: [SigningPublicKey EdDSA_SHA512_Ed25519: size: 32] +Padding: 96 bytes] +Signature: [Signature EdDSA_SHA512_Ed25519: size: 64] +Published: Sun Oct 09 01:34:59 UTC 2016 +Options (5): + [caps] = [LfR] + [netId] = [2] + [netdb.knownLeaseSets] = [37] + [netdb.knownRouters] = [2435] + [router.version] = [0.9.26] +Addresses (4): +[RouterAddress: +Type: SSU +Cost: 4 +Options (5): + [caps] = [BC] + [host] = [2a01:e35:8b5c:b240:71a2:6750:8d4:47fa] + [key] = [nYZ5Qe7gQ-~QgfgJVRUG4c0JnVeVqzM~duUX1EGT1ek=] + [mtu] = [1472] + [port] = [22244]] +[RouterAddress: +Type: NTCP +Cost: 9 +Options (2): + [host] = [2a01:e35:8b5c:b240:71a2:6750:8d4:47fa] + [port] = [22244]] +[RouterAddress: +Type: SSU +Cost: 6 +Options (4): + [caps] = [BC] + [host] = [88.181.203.36] + [key] = [nYZ5Qe7gQ-~QgfgJVRUG4c0JnVeVqzM~duUX1EGT1ek=] + [port] = [22244]] +[RouterAddress: +Type: NTCP +Cost: 11 +Options (2): + [host] = [88.181.203.36] + [port] = [22244]]] +``` + +### Notes + +For details and specification, visit @Java-I2P [Network Database](https://geti2p.net/en/docs/how/network-database) page. diff --git a/_i18n/ar/resources/moneropedia/scalability.md b/_i18n/ar/resources/moneropedia/scalability.md new file mode 100644 index 00000000..e81402e3 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/scalability.md @@ -0,0 +1,10 @@ +--- +entry: "Scalability" +terms: ["scalability"] +summary: "Growth potential of Monero, resources required, and methods of increasing efficiency" +--- + +{% include untranslated.html %} +### The Basics + +Monero has no hardcoded maximum block size, which means that unlike Bitcoin it does not have a 1 MB block size limit preventing scaling. However, a block reward penalty mechanism is built into the protocol to avoid a too excessive block size increase: The new block's size (NBS) is compared to the median size M100 of the last 100 blocks. If NBS>M100, the block reward gets reduced in quadratic dependency of how much NBS exceeds M100. E.g. if NBS is [10%, 50%, 80%, 100%] greater than M100, the nominal block reward gets reduced by [1%, 25%, 64%, 100%]. Generally, blocks greater than 2*M100 are not allowed, and blocks <= 60kB are always free of any block reward penalties. diff --git a/_i18n/ar/resources/moneropedia/signature.md b/_i18n/ar/resources/moneropedia/signature.md new file mode 100644 index 00000000..f2825ef7 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/signature.md @@ -0,0 +1,10 @@ +--- +entry: "Cryptographic Signature" +terms: ["signature", "signatures"] +summary: "a cryptographic method for proving ownership of a piece of information, as well as proving that the information has not been modified after being signed" +--- + +{% include untranslated.html %} +### The Basics + +A cryptographic method for proving ownership of a piece of information, as well as proving that the information has not been modified after being signed. \ No newline at end of file diff --git a/_i18n/ar/resources/moneropedia/smartmining.md b/_i18n/ar/resources/moneropedia/smartmining.md new file mode 100644 index 00000000..87b8e955 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/smartmining.md @@ -0,0 +1,15 @@ +--- +entry: "Smart Mining" +terms: ["smart-mining"] +summary: "a process of having a throttled miner mine when it otherwise does not cause drawbacks" +--- + +{% include untranslated.html %} +### The Basics + +Smart mining is the process of having a throttled @miner mine when it otherwise does not cause drawbacks. +Drawbacks include increases heat, slower machine, depleting battery, etc. The intent of smart mining is to increase network security by allowing as many people as possible to let the smart miner on all the time. For this to work, the miner must prove unobtrusive, or it will be turned off, depriving the Monero network from a little bit of security. As such, it is likely that a smart miner will mine slower than a normal miner on the same hardware. + +Smart mining is available in the official CLI and GUI wallet, which are available in the [downloads page](https://getmonero.org/downloads/). + +It is hoped that the relative slowness of a smart miner (especially on low-power machines) will be offset by the large amount of people running a miner for a possible "lottery win", and thus increase the Monero network security by a non trivial amount. The increased hash rate from many different sources helps keep the Monero network decentralized. diff --git a/_i18n/ar/resources/moneropedia/spendkey.md b/_i18n/ar/resources/moneropedia/spendkey.md new file mode 100644 index 00000000..33f9abcd --- /dev/null +++ b/_i18n/ar/resources/moneropedia/spendkey.md @@ -0,0 +1,16 @@ +--- +entry: "Spend Key" +terms: ["spend-key", "spend-keys"] +summary: "one of the two pairs of private and public cryptographic keys that each account has, with the *private* spend key used to spend any funds in the account" +--- + +{% include untranslated.html %} +### The Basics + +One of the two pairs of private and public cryptographic keys that each account has, with the *private* spend key used to spend any funds in the account. + +### In-depth Information + +The *private* spend key is a 256-bit integer that is used to sign Monero transactions. With the current deterministic key derivation method of the official wallet, the private spend key is also an alternate representation of the @mnemonic-seed. It can be used to derive all other account keys. + + diff --git a/_i18n/ar/resources/moneropedia/ssu.md b/_i18n/ar/resources/moneropedia/ssu.md new file mode 100644 index 00000000..9ed69302 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/ssu.md @@ -0,0 +1,26 @@ +--- +entry: "SSU" +tags: ["kovri"] +terms: ["SSU"] +summary: "Secure Semi-reliable UDP: one of two Kovri transports" +--- + +{% include untranslated.html %} +### The Basics + +*Secure Semi-reliable UDP* is one of two encrypted @transports for @Kovri. + +Similar to @NTCP, @SSU's *primary* purpose is to securely transmit @in-net @I2NP messages through @tunnels but, unlike @NTCP, @SSU functions solely over encrypted [UDP](https://en.wikipedia.org/wiki/User_Datagram_Protocol). + +### In-depth information + +- Like @NTCP, @SSU is a connection-oriented, point-to-point data transport +- Termed *semi-reliable* because @SSU will repeatedly retransmit *unacknowledged* messages (up to maximum number then dropped) +- @SSU also provides several unique services (in addition to its function as a @transport layer): + - IP detection (local inspection or with [peer testing](https://geti2p.net/en/docs/transport/ssu#peerTesting)) + - [NAT](https://en.wikipedia.org/wiki/Network_address_translation) traversal (using [introducers](https://geti2p.net/en/docs/transport/ssu#introduction)) + - [Firewall](https://en.wikipedia.org/wiki/Firewall_%28computing%29) status and, if implemented, @SSU can notify @NTCP if the external address or firewall status changes + +### Notes + +For further details, read @Java-I2P's [SSU](https://geti2p.net/en/docs/transport/ssu) diff --git a/_i18n/ar/resources/moneropedia/stealthaddress.md b/_i18n/ar/resources/moneropedia/stealthaddress.md new file mode 100644 index 00000000..6ef7b617 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/stealthaddress.md @@ -0,0 +1,16 @@ +--- +entry: "Stealth Address" +terms: ["stealth-address", "stealth-addresses"] +summary: "automatic one-time addresses for every transaction" +--- + +{% include untranslated.html %} +### The Basics + +Stealth addresses are an important part of Monero's inherent privacy. They allow and require the sender to create random one-time addresses for every @transaction on behalf of the recipient. The recipient can publish just one address, yet have all of his/her incoming payments go to unique addresses on the @blockchain, where they cannot be linked back to either the recipient's published address or any other transactions' addresses. By using stealth addresses, only the sender and receiver can determine where a payment was sent. + +When you create a Monero account you’ll have a private @view-key, a private @spend-key, and a Public Address. The @spend-key is used to send payments, the @view-key is used to display incoming transactions destined for your account, and the Public Address is for receiving payments. Both the @spend-key and @view-key are used to build your Monero address. You can have a “watch only” wallet that only uses the @view-key. This feature can be used for accounting or auditing purposes but is currently unreliable due to the inability to track outgoing transactions. You can decide who can see your Monero balance by sharing your @view-key. Monero is private by default and optionally semi-transparent! + +When using the Monero Wallet all this is handled by the software. Sending Monero is as easy as entering the destination address, the amount, and pressing Send. To recieve Monero, simply provide the sender your Public Address. + +To learn how Monero prevents tracking history (untraceability), see @ring-signatures. diff --git a/_i18n/ar/resources/moneropedia/subscription.md b/_i18n/ar/resources/moneropedia/subscription.md new file mode 100644 index 00000000..b0c04c7d --- /dev/null +++ b/_i18n/ar/resources/moneropedia/subscription.md @@ -0,0 +1,47 @@ +--- +entry: "Subscription" +tags: ["kovri"] +terms: ["Subscription"] +summary: "A file used by address book which contains I2P hosts paired with I2P destinations" +--- + +{% include untranslated.html %} +### The Basics + +A subscription is a file which contains a list of `.i2p` hosts paired with their respective @destination. Subscriptions are used by the @address-book. + +### In-depth information + +Similar to how a [hosts file](https://en.wikipedia.org/wiki/etc/hosts) can map an Internet hostname to a specified address, a subscription matches a `.i2p` address to @base64-address by using the following format (no spaces allowed): `host=address` + +More specifically, a subscription pairs a @locally-unique-host to @base64-address. + +Example: + +``` +anonimal.i2p=AQZGLAMpI9Q0l0kmMj1vpJJYK3CjLp~fE3MfvE-e7KMKjI5cPOH6EN8m794uHJ6b09qM8mb9VEv1lVLEov~usVliTSXCSHuRBOCIwIOuDNU0AbVa4BpIx~2sU4TxKhoaA3zQ6VzINoduTdR2IJhPvI5xzezp7dR21CEQGGTbenDslXeQ4iLHFA2~bzp1f7etSl9T2W9RID-KH78sRQmzWnv7dbhNodMbpO6xsf1vENf6bMRzqD5vgHEHZu2aSoNuPyYxDU1eM6--61b2xp9mt1k3ud-5WvPVg89RaU9ugU5cxaHgR927lHMCAEU2Ax~zUb3DbrvgQBOTHnJEx2Fp7pOK~PnP6ylkYKQMfLROosLDXinxOoSKP0UYCh2WgIUPwE7WzJH3PiJVF0~WZ1dZ9mg00c~gzLgmkOxe1NpFRNg6XzoARivNVB5NuWqNxr5WKWMLBGQ9YHvHO1OHhUJTowb9X90BhtHnLK2AHwO6fV-iHWxRJyDabhSMj1kuYpVUBQAEAAcAAA== +``` + +1. `anonimal.i2p` is the @locally-unique-host +2. `=` is the separator +3. Everything that remains is the @base64-address + +### Subscription types + +For @Kovri, there are two types of subscription files: *public* and *private*. + +A *public* subscription: +- is used when bootstrapping to use essential services (IRC, email, Monero, etc.) +- is static and is refreshed every 12 hours from Monero's @address-book server +- allows you to safely share the subscription with everyone as it is publically available (anyone who shares the same public subscription will also be able to resolve the same hostname to the same destination as you) + +A *private* subscription: +- is used exclusively by you and is not shared with others unless you explicitly choose to share the file +- default file is `private_hosts.txt` in your @data-directory + +### Updating a private subscription + +You can use a @jump-service to manually update your private subscription. The updated subscription will then be fed into the @address-book for you to use. + +### Notes +To learn how to subscribe to multiple subscriptions, see the [user-guide](https://github.com/monero-project/kovri/blob/master/doc/USER_GUIDE.md). diff --git a/_i18n/ar/resources/moneropedia/tail-emission.md b/_i18n/ar/resources/moneropedia/tail-emission.md new file mode 100644 index 00000000..023c663a --- /dev/null +++ b/_i18n/ar/resources/moneropedia/tail-emission.md @@ -0,0 +1,16 @@ +--- +entry: "Tail Emission" +terms: ["Tail-Emission"] +summary: "the block reward at the end of the emission curve" +--- + +{% include untranslated.html %} +### The Basics + +Monero block rewards will never drop to zero. Block rewards will gradually drop until tail emission commences at the end of May 2022. At this point, rewards will be fixed at 0.6 XMR per block. + +### Why + +Miners need an incentive to mine. Because of the dynamic blocksize, competition between @miners will cause fees to decrease. If mining is not profitable due to a high cost and low reward, miners lose their incentive and will stop mining, reducing the security of the network. + +Tail emission ensures that a dynamic block size and fee market can develop. diff --git a/_i18n/ar/resources/moneropedia/transaction.md b/_i18n/ar/resources/moneropedia/transaction.md new file mode 100644 index 00000000..716de0ac --- /dev/null +++ b/_i18n/ar/resources/moneropedia/transaction.md @@ -0,0 +1,23 @@ +--- +entry: "Transactions" +terms: ["transaction", "transactions"] +summary: "a cryptographically signed container that details the transfer of Monero to a recipient (or recipients)" +--- + +{% include untranslated.html %} +### The Basics + +A cryptographically signed container that details the transfer of Monero to a recipient (or recipients). + +The parameters of a transaction contain one or more recipient addresses with corresponding amounts of funds and a @ring-size parameter that specifies the number outputs bound to the transaction. The more outputs that are used, a higher degree of obfuscation is possible, but that comes with a cost. Since a transaction gets larger with more outputs, the transaction fee will be higher. + +It is possible to form a transaction offline, which offers additional privacy benefits. + +A transaction can be uniquely identified with the use of an optional Transaction ID, which is usually represented by a 32-byte string (64 hexadecimal characters). + +### In-depth Information +Every transaction involves two keys: a public @spend-key, and a public @view-key. The destination for an output in a transaction is actually a one-time public key computed from these two keys. + +When a wallet is scanning for incoming transactions, every transaction is scanned to see if it is for "you". This only requires your private view key and your public spend key, and this check is immutable and cannot be faked. You cannot receive transactions and identify them without a corresponding private view key. + +In order to spend the funds you have to compute a one-time private spend key for that output. This is almost always done automatically by the Monero Wallet software. diff --git a/_i18n/ar/resources/moneropedia/transports.md b/_i18n/ar/resources/moneropedia/transports.md new file mode 100644 index 00000000..687a7e9d --- /dev/null +++ b/_i18n/ar/resources/moneropedia/transports.md @@ -0,0 +1,20 @@ +--- +entry: "Transports" +tags: ["kovri"] +terms: ["Transports", "Transport"] +summary: "The two encrypted transport layers for Kovri" +--- + +{% include untranslated.html %} +### The Basics + +@I2P comes with two encrypted transport layer technologies that allow @Kovri to securely use [TCP/IP](https://en.wikipedia.org/wiki/Tcp/ip) connections. These technologies (@SSU and @NTCP) are called *@transports*. + +### In-depth information + +@SSU is encrypted [UDP](https://en.wikipedia.org/wiki/User_Datagram_Protocol) and @NTCP is encrypted [TCP](https://en.wikipedia.org/wiki/Transmission_Control_Protocol). They provide @encryption at the [transport layer](https://en.wikipedia.org/wiki/Transport_layer) so higher level @messages can be sent through @tunnels across the @I2P network. + +### Notes + +- Read about @I2P's transports on the [Transport](https://geti2p.net/en/docs/transport) page +- Read about the transports layer within the [OSI model](https://en.wikipedia.org/wiki/OSI_model) diff --git a/_i18n/ar/resources/moneropedia/tunnel.md b/_i18n/ar/resources/moneropedia/tunnel.md new file mode 100644 index 00000000..795f939c --- /dev/null +++ b/_i18n/ar/resources/moneropedia/tunnel.md @@ -0,0 +1,37 @@ +--- +entry: "Tunnel" +tags: ["kovri"] +terms: ["Tunnel", "Tunnels"] +summary: "Uni-directional virtual paths that pass messages through a defined sequence of I2P routers" +--- + +{% include untranslated.html %} +### The Basics + +When you communicate over @I2P (visit an @eepsite / use a @garlic-service), you'll first need to connect to a peer by using @transports and then build virtual *tunnels*. These virtual tunnels are temporary, uni-directional paths that pass information through a defined sequence of @I2P routers to your @destination. Tunnels are built, and then used, with layered @garlic-encryption and are a general-purpose mechanism to transport all @I2NP @messages. + +Each peer builds, at a minimum, *two* uni-directional tunnels: one for **outbound traffic**, and one for **inbound traffic**. These tunnels are classified as either **inbound tunnels** (where @messages come toward the creator of the tunnel) or **outbound tunnels** (where the tunnel creator sends @messages away from the creator of the tunnel). Thus, *four* tunnels are required for a single round-trip @message and reply to your @destination (two for your, two for your destination). + +### In-depth information + +From @Java-I2P: + +> +Within I2P, @messages are passed in one direction through a virtual tunnel of peers, using whatever means are available to pass the @message on to the next hop. Messages arrive at the tunnel's gateway, get bundled up and/or fragmented into fixed-size @tunnel @messages, and are forwarded on to the next hop in the tunnel, which processes and verifies the validity of the @message and sends it on to the next hop, and so on, until it reaches the @tunnel endpoint. That endpoint takes the messages bundled up by the gateway and forwards them as instructed - either to another router, to another tunnel on another router, or locally. + +> +Tunnels all work the same, but can be segmented into two different groups - inbound tunnels and outbound tunnels. The inbound tunnels have an untrusted gateway which passes messages down towards the tunnel creator, which serves as the tunnel endpoint. For outbound tunnels, the tunnel creator serves as the gateway, passing messages out to the remote endpoint. + +> +The tunnel's creator selects exactly which peers will participate in the tunnel, and provides each with the necessary configuration data. They may have any number of hops. It is the intent to make it hard for either participants or third parties to determine the length of a tunnel, or even for colluding participants to determine whether they are a part of the same tunnel at all (barring the situation where colluding peers are next to each other in the tunnel). + +### Notes + +From @Java-I2P: + +> +@I2P is an inherently packet switched network, even with these tunnels, allowing it to take advantage of multiple tunnels running in parallel, increasing resilience and balancing load. Even though the tunnels within I2P bear a resemblance to a circuit switched network, everything within I2P is strictly message based - tunnels are merely accounting tricks to help organize the delivery of messages. No assumptions are made regarding reliability or ordering of messages, and retransmissions are left to higher levels (e.g. I2P's client layer streaming library). + +### Documentation + +For specification and detailed documentation, visit the [Tunnel-Routing](https://geti2p.net/en/docs/how/tunnel-routing) and [Tunnel-Implementation](https://geti2p.net/en/docs/tunnels/implementation) page. diff --git a/_i18n/ar/resources/moneropedia/unlocktime.md b/_i18n/ar/resources/moneropedia/unlocktime.md new file mode 100644 index 00000000..824560d7 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/unlocktime.md @@ -0,0 +1,14 @@ +--- +entry: "Transaction Unlock Time" +terms: ["unlock-time"] +summary: "a special transaction where the recipient can only spend the funds after a future date, as set by the sender" +--- + +{% include untranslated.html %} +### The Basics + +A special transaction where the recipient can only spend the funds after a future date, as set by the sender. + +Unlock time allows you to send a transaction to someone, such that they can not spend it until after a certain number of blocks, or until a certain time. + +Note that this works differently than Bitcoin's [nLockTime](https://en.bitcoin.it/wiki/NLockTime), in which the transaction is not valid until the given time. diff --git a/_i18n/ar/resources/moneropedia/viewkey.md b/_i18n/ar/resources/moneropedia/viewkey.md new file mode 100644 index 00000000..e9b092e0 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/viewkey.md @@ -0,0 +1,14 @@ +--- +entry: "View Key" +terms: ["view-key", "view-keys"] +summary: "one of two sets of private and public cryptographic keys that each account has, with the private view key required to view all transactions related to the account" +--- + +{% include untranslated.html %} +### The Basics + +One of two sets of private and public cryptographic keys that each account has, with the private view key required to view all transactions related to the account. + +Monero features an opaque blockchain (with an explicit allowance system called the @view-key), in sharp contrast with transparent blockchains used by any other cryptocurrency not based on CryptoNote. Thus, Monero is said to be "private, optionally transparent". + +Every Monero address has a private viewkey which can be shared. By sharing a viewkey, a person is allowing access to view every incoming transaction for that address. However, outgoing transactions cannot be reliably viewed as of June 2017. Therefore, the balance of a Monero address as shown via a viewkey should not be relied upon. diff --git a/_i18n/ar/resources/moneropedia/wallet.md b/_i18n/ar/resources/moneropedia/wallet.md new file mode 100644 index 00000000..e8bea7b8 --- /dev/null +++ b/_i18n/ar/resources/moneropedia/wallet.md @@ -0,0 +1,19 @@ +--- +entry: "Wallet" +terms: ["wallet", "wallets"] +summary: "A wallet stores the information necessary to send and receive Monero" +--- + +{% include untranslated.html %} +### The Basics + +A Monero account, or wallet, stores the information necessary to send and receive Moneroj. In addition to sending and receiving, the Monero Wallet software keeps a private history of your transactions and allows you to cryptographically sign messages. It also includes Monero mining software and an address book. + +The term "hot wallet" describes a Monero @account which is connected to the Internet. You can send funds easily but security is much lower than a cold wallet. Never store large amounts of cryptocurrency in a hot wallet! + +A cold wallet is generated on a trusted device or computer via an @airgap. If the device is to be reused, the data storage should be securely overwritten. As soon as a cold wallet is connected to the Internet or its mnemonic phrase or @spend-key is entered on an Internet-connected device, it's no longer "cold" and should be considered "hot". + +A Monero @paper-wallet can be generated by downloading the source code of https://moneroaddress.org/. Verify the signature of the code on a trusted airgapped device. Create the wallet and print or store it on the media of your choice. + +Monero accounts and paper-wallets can be stored on any media - paper, USB drive, CD/DVD, or a hardware wallet device (none available for Monero as of June 2017). + diff --git a/_i18n/ar/resources/user-guides/How-to-mine-Monero-XMR-without-a-mining-equipment.md b/_i18n/ar/resources/user-guides/How-to-mine-Monero-XMR-without-a-mining-equipment.md new file mode 100644 index 00000000..35043bba --- /dev/null +++ b/_i18n/ar/resources/user-guides/How-to-mine-Monero-XMR-without-a-mining-equipment.md @@ -0,0 +1,48 @@ +## How to mine Monero (XMR) without a mining equipment? + +If you don’t have a profitable mining equipment, nor time or +money to invest into building it, you can still mine Monero with NiceHash. + +NiceHash is a hashing power marketplace. Sellers of hashing +power, i.e. miners, provide the hashing power for buyers (those who want to buy +a service of mining a certain coin). Hence, NiceHash can provide you a massive +hashing power in short amount of time. You won’t have to wait for years to see +if you will make a profit or not and you can control which coin, at which pool, +and for how long you want to mine. + +### **Step 1:** Create new account at NiceHash + +Visit [registration +page](https://www.nicehash.com/?p=register) and register with your e-mail address. + +### **Step 2:** Deposit some Bitcoins to your account + +You will mine Monero, but you can buy hashing power at +NiceHash only with Bitcoins. You can always withdraw unspent Bitcoins from your +account back to any Bitcoin wallet. + +Visit your [wallet +page](https://www.nicehash.com/?p=wallet) and make a deposit. Note that the minimum price for placing an order +equals 0.01 BTC. + +### **Step 3:** Find a suitable pool for mining and add it to your pool list + +Selection of the pool plays a big role in the final amount +of mined cryptocurrency. Make sure the pool you have selected can handle +massive hashing rate and loads of shares, especially from a single connection. +You can find a list of Monero pools [here](https://bitcointalk.org/index.php?topic=583449.0). + +Note that you will probably have to register an account at +selected pool as well. The pool will provide you with all the information you need. +You can save your favorite pools at [this page](https://www.nicehash.com/?p=managepools). + +### **Step 4:** Create new order and start mining + +When creating a [new order](https://www.nicehash.com/?p=orders&new), make sure you +select CryptoNightV7 algorithm for mining Monero (New algorithm variant since 2018 April the 6th). If you want to first learn more +about placing an order with NiceHash, we recommend you to read this [frequently asked question](https://www.nicehash.com/?p=faq#faqb0). + +If you want to bid on +hashing power select Standard (bidding) order type and if you want a fixed +order that cannot be outbid, select Fixed order type. The status of marketplace +and approximate prices of mining can be checked at [live marketplace](https://www.nicehash.com/index.jsp?p=orders).  \ No newline at end of file diff --git a/_i18n/ar/resources/user-guides/Offline_Backup.md b/_i18n/ar/resources/user-guides/Offline_Backup.md new file mode 100644 index 00000000..78061a2a --- /dev/null +++ b/_i18n/ar/resources/user-guides/Offline_Backup.md @@ -0,0 +1,36 @@ +## نظام التشغيل : إصدارات مُختلِفه من ليُنكس وويندوز 7 و 8 + +### برنامج المحفظه : Simplewallet + +#### موارد إنشاء أقراص الإقلاع: [لينكس](http://www.pendrivelinux.com/), [ويندوز](https://www.microsoft.com/en-us/download/windows-usb-dvd-download-tool) + +#### موارد تحميل برامج مونيرو: [برامج مونيرو](https://getmonero.org/downloads/) + +- إستخدم أي حاسوب لديك , حتي لو كان جهازك الشخصي. إذا كنت من الشكاكين بدرجه جنونيه ربما تجد أن من الأسهل إستخدام حاسوب قديم لا يحتوي علي واي-فاي أو بلوتوث. + +- قم بإنشاء قرص إقلاع سواء ليُنكس أو ويندوز وتأكد من تحمل ملفات تثبيت مونيرو علي نفس القرص أو قرص آخر ( لليُنكس سوف تحتاج لتنزيل بعض ملفات التثبيت المُساعده مثال libboost1.55 و miniupnpc. + +- إفصل إتصال الحاسوب بالإنترنت تماما ( إفصل الكابلات - عطّل الواي-فاي والبلوتوث - او حتي قم بإزاله بطاقه الواي-فاي إن أمكن) + +- قم بالدخول إلي نظام التشغيل المُجهز سابقاً وقم بتثبيت البرامج المُساعده إن لزم الأمر + +- إنسخ برامج تثبيت مونيرو علي قرص الذاكره العشوائيه ( في ليُنكس موجود في /dev/shm وفي ويندوز غالباً ستجده يُسمي Z: ) + +- لا تقوم بتشغيل خادم مونيرو. بدلاً من ذلك إستخدم سطر الأوامر الخاص بمونيرو لإنشاء @حساب جديد + +- عِندما يُطلب منك إسماً إكتب أي أسم لا يُهم. + +- عِند طًلب كِلمه سر قم بكتابه 50 - 100 حرف. لا تقلق إذ لم تعرفها فقط إجعلها طويله بقدر الإمكان. + +- **خطوه هامه جداً** : إكتب علي ورقه ال25 كلمه من @كَلِمات-الإستعاده +**تحذير**: إذا نسيت كتابه هذه الكلمات سوف تضيع أموالك للأبد + +- إكتب ( حيثما تريد سواء علي هاتفك أو علي ورقه أو حاسوب آخر) عنوان حسابك ومفتاح الرؤيه الخاص بك + +- إغلق الحاسوب و قم بفصل البطاريه إذ كان هُناك واحده و إترك الجهاز مُغلق لِعِده ساعات + +تم إنشاء الحساب في الذاكره العشوائيه ولا يمكن الوصول للملفات الأن. إذا تَمَكَن أحد الأخصام من الوصول للبيانات لن يتمكن من الحصول علي كلمه السر الطويله بأي طريقه. إذا إحتجت إستلام مُعاملات لديك عنوان الحساب ومُفتاح الرؤيه. إذا كنت تريد الدخول للحساب لديك ال25 كلمه الخاصين بإستعاده حسابك. قم بإنشاء عِده نُسخ منها في أماكن مُتفرقه وإحذر أن تقع في حوزه أي شخص . + +الكاتب : ريكاردو إسبانغي (Riccardo Spagni) + +مُرتبط بالموضوع: [مُنشيء حساب بِدون إتصال بالإنترنت](http://moneroaddress.org/) diff --git a/_i18n/ar/resources/user-guides/cli_wallet_daemon_isolation_qubes_whonix.md b/_i18n/ar/resources/user-guides/cli_wallet_daemon_isolation_qubes_whonix.md new file mode 100644 index 00000000..9a772223 --- /dev/null +++ b/_i18n/ar/resources/user-guides/cli_wallet_daemon_isolation_qubes_whonix.md @@ -0,0 +1,149 @@ +# عزل واجهه سطر الأوامر/الخادم في نظام Qubes + Whonix + +مع نظام [Qubes](https://qubes-os.org) + [Whonix](https://whonix.org) يُمكنك إنشاء محفظه مونيرو بدون إتصال بالإنترنت تعمل علي نظام إفتراضي معزول عن خادم مونيرو الذي يَمر كل بياناته من خلال شبكه التور [Tor](https://torproject.org). + +يُوفر نظام كيوبس السلاسه اللازمه لسهوله إنشاء أنظمه إفتراضيه لأهداف مختلفه. في البدايه ستقوم بإنشاء مكنه إفتراضيه علي وونكس للمحفظه بدون إتصال. بعد ذلك مكنه ووُنكس أُخري لخادم مونيرو . للتواصل بين المحفظه والخادم يُمكنك إستخدام كيوبس [qrexec](https://www.qubes-os.org/doc/qrexec3/). + +هذه الطريقه أكثر أماناً من الطرق الاخري التي توجّه بروتوكول (RPC) المحفظه خلال خدمه تور(TOR) مخفيه, أو التي تستخدم العزل المادي لكنها ماتزال تستخدم الإنترنت للإتصال بالخادم. بهذه الطريقه لا تحتاج أي إتصال شبكي بالمحفظه, فإنك تُحافظ علي موارد شبكة تور(Tor) ، ووقت الإستجابة أقل. + + +## 1. [إنشاء مكنه إفتراضي للتطبيقات علي وونكس (Whonix AppVMs)](https://www.whonix.org/wiki/Qubes/Install): + ++ بإستخدام قالب مكن وونكس الإفتراضي , إنشيء مكنتين كما التالي : + + -أول مكنه سيتم إستخدامها للمحفظه, سيُشار إليها بـ`monero-wallet-ws`. قم بإختيار`none` في `NetVM`. + + - المكنه الأخري سوف تُستخدم للخادم, سيُشار إليها بـ`monerod-ws`. سيتم إختيار `sys-whonix` ل `NetVM`. + +## 2. في مكنه تطبيق `monerod-ws`: + ++ تنزيل وتطبيق وتسطيب برنامج مونيرو. + +``` +user@host:~$ curl -O "https://downloads.getmonero.org/cli/monero-linux-x64-v0.11.1.0.tar.bz2" -O "https://getmonero.org/downloads/hashes.txt" +user@host:~$ gpg --recv-keys BDA6BD7042B721C467A9759D7455C5E3C0CDCEB9 +user@host:~$ gpg --verify hashes.txt +gpg: Signature made Wed 01 Nov 2017 10:01:41 AM UTC +gpg: using RSA key 0x55432DF31CCD4FCD +gpg: Good signature from "Riccardo Spagni " [unknown] +gpg: WARNING: This key is not certified with a trusted signature! +gpg: There is no indication that the signature belongs to the owner. +Primary key fingerprint: BDA6 BD70 42B7 21C4 67A9 759D 7455 C5E3 C0CD CEB9 + Subkey fingerprint: 94B7 38DD 3501 32F5 ACBE EA1D 5543 2DF3 1CCD 4FCD +user@host:~$ echo '6581506f8a030d8d50b38744ba7144f2765c9028d18d990beb316e13655ab248 monero-linux-x64-v0.11.1.0.tar.bz2' | shasum -c +monero-linux-x64-v0.11.1.0.tar.bz2: OK +user@host:~$ tar xf monero-linux-x64-v0.11.1.0.tar.bz2 +user@host:~$ sudo cp monero-v0.11.1.0/monerod /usr/local/bin/ +``` ++ إنشاء ملف `systemd`. + +``` +user@host:~$ sudo gedit /home/user/monerod.service +``` + +إنسخ المُحتوي التالي : + +``` +[Unit] +Description=Monero Full Node +After=network.target + +[Service] +User=user +Group=user + +Type=forking +PIDFile=/home/user/.bitmonero/monerod.pid + +ExecStart=/usr/local/bin/monerod --detach --data-dir=/home/user/.bitmonero \ + --no-igd --pidfile=/home/user/.bitmonero/monerod.pid \ + --log-file=/home/user/.bitmonero/bitmonero.log --p2p-bind-ip=127.0.0.1 + +Restart=always +PrivateTmp=true + +[Install] +WantedBy=multi-user.target +``` + ++ إنسخ `monero-wallet-cli` إلي `monero-wallet-ws` VM. + +``` +user@host:~$ qvm-copy-to-vm monero-wallet-ws monero-v0.11.1.0/monero-wallet-cli +``` + ++ إجعل `monerod` الخادم يبدأ فور التشغيل تلقائياً بتعديل ملف `/rw/config/rc.local`. + +``` +user@host:~$ sudo gedit /rw/config/rc.local +``` + +ضِف هذه السطور بآخر الملف: + +``` +cp /home/user/monerod.service /lib/systemd/system/ +systemctl start monerod.service +``` + +إجعل الملف قابل للتشغيل. + +``` +user@host:~$ sudo chmod +x /rw/config/rc.local +``` + ++ إنشاء ملف (RPC). + +``` +user@host:~$ sudo mkdir /rw/usrlocal/etc/qubes-rpc +user@host:~$ sudo gedit /rw/usrlocal/etc/qubes-rpc/user.monerod +``` + +أضف هذا السطر: + +``` +socat STDIO TCP:localhost:18081 +``` + ++ إِغلِق `monerod-ws`. + +## 3. في مكنه تطبيق `monero-wallet-ws`: + ++ حَرِك ملف `monero-wallet-cli` قابل للتشغيل . + +``` +user@host:~$ sudo mv QubesIncoming/monerod-ws/monero-wallet-cli /usr/local/bin/ +``` + ++ عَدِل ملف `/rw/config/rc.local`. + +``` +user@host:~$ sudo gedit /rw/config/rc.local +``` + +أضف هذا السطر بالآخر: + +``` +socat TCP-LISTEN:18081,fork,bind=127.0.0.1 EXEC:"qrexec-client-vm monerod-ws user.monerod" +``` + +إجعل الملف قابل للتشغيل. + +``` +user@host:~$ sudo chmod +x /rw/config/rc.local +``` + ++ إِغلِق `monero-wallet-ws`. + +## 4. في `dom0`: + ++ إنشيء ملف `/etc/qubes-rpc/policy/user.monerod`: + +``` +[user@dom0 ~]$ sudo nano /etc/qubes-rpc/policy/user.monerod +``` + +قم بإضافه هذا السطر: + +``` +monero-wallet-ws monerod-ws allow +``` diff --git a/_i18n/ar/resources/user-guides/create_wallet.md b/_i18n/ar/resources/user-guides/create_wallet.md new file mode 100644 index 00000000..a4e7222b --- /dev/null +++ b/_i18n/ar/resources/user-guides/create_wallet.md @@ -0,0 +1,60 @@ +### Operating Systems: Ubuntu + +- Download the [official binaries](https://getmonero.org/downloads/) or compile the last source available on [Github](https://github.com/monero-project/bitmonero) + +![image1](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/1.png) +![image2](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/2.png) + +- Extract the files with the archive manager (same as Winzip on Windows). Note the path where the files "monerod" and "monero-wallet-cli" are + +![image3](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/3.png) +![image4](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/4.png) + +- You only need to do this step once : open a terminal (ctrl+alt+t) and install the required dependencies by typing : "*sudo apt-get install libboost-all-dev libssl-dev libevent-dev libdb++-dev*". When asked, press the Y key and then Enter to continue + +![image5](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/5.png) +![image6](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/6.png) + +- Open a terminal and load the path where your binaries are extracted (cf. step 2) by typing : "*cd yourPathFromStep2*" + +![image7](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/7.png) + +- Load monerod by typing in your terminal : "*./monerod*". Wait for the synchronization with the network (monerod is updating the blockchain you have downloaded in step 4 or is downloading it from scratch). This can take a lot of time the first time, so be patient + +![image8](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/8.png) +![image9](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/9.png) +![image10](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/10.png) +![image11](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/11.png) + +- Once monerod is synchronized with the network, open a new terminal, change the directory (cf. step 5), and launch monero-wallet-cli by typing "*./monero-wallet-cli*" + +![image12](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/12.png) + +- Enter the name you want for your portfolio and follow the instructions from the terminal + +![image13](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/13.png) +![image14](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/14.png) +![image15](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/15.png) +![image16](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/16.png) + +*This is your private key. Write it down and keep it in a safe place!* + +![image17](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/17.png) + +*This is your view key. You need it to create a view only wallet (cf. associated user guide)* + +![image18](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/18.png) + +*This is the address of your wallet* + +![image19](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/19.png) +![image20](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/20.png) +![image21](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/21.png) +![image22](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/22.png) +![image23](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/create_wallet/23.png) + +- To exit monerod or monero-wallet-cli just type "*exit*" in the associated terminal + +Now to access the portfolio you have just created you will have to launch monerod, wait for it to be synchronized with the network, launch monero-wallet-cli, and type the name of your portfolio and your password. + + diff --git a/_i18n/ar/resources/user-guides/easiest_buy.md b/_i18n/ar/resources/user-guides/easiest_buy.md new file mode 100644 index 00000000..d5b6ce4f --- /dev/null +++ b/_i18n/ar/resources/user-guides/easiest_buy.md @@ -0,0 +1,64 @@ +## How to obtain Monero + +This is a guide to obtain your own Monero as of 20150919. This is perhaps the easiest way to purchase and hold Monero. + +####Step 1: Buy Bitcoin + +There are many ways to buy Bitcoin. Perhaps the easiest way is through circle.com. Once you have purchased some Bitcoin, you are ready to buy some Monero! Buying Bitcoin is straightforward. Please goto circle.com and just follow the instructions there. + +####Step 2: Set up a mymonero.com account + +MyMonero.com is an online wallet for Monero, maintained by Monero Core Developer Ricardo Spagni (fluffpony). It is the easiest wallet to use. Simply go to MyMonero.com and click on the "Create an Account" button. + +![image1](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/01.png) + +After clicking the button, you will see your private key. This key is what gives you access to your funds. Never share this key with anyone! + +### WRITE DOWN THIS KEY IMMEDIATELY! + +![image2](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/02.png) + +Type in your private key in the box below, and click the button. + +On the next page, you will see your address. + +![image3](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/03.png) + +Copy your address to the clipboard by highlighting the whole thing and hitting ctrl+c (or edit menu, copy), or clicking the little icon next to your address. Save your address somewhere. This is how others will send Monero to you, and what you will use to deposit Monero into your account! + +#### Step 3: Buy Monero and transfer the Monero to your new address + +Go to www.shapeshift.io . On the righthand side, of the screen, click icon under "Receive" to select Monero. + +![image5](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/05.png) +![image6](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/06.png) + +Paste your address into the field under the Monero logo. Select the "agree to terms" button, then hit "Start" + +![image7](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/07.png) + +In the new screen that pops up, copy the Deposit Address into your clipboard (select and hit ctrl+c or edit-copy) + +![image8](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/08.png) + +Go back to your circle.com page, hit the "transfer" button, and paste the Bitcoin address into the field +Enter the amount of Bitcoin you would like to spend. + +![image4](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/04.png) +![image9](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/09.png) + +You will get a text message verification code. Enter code and hit send. + +![image10](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/10.png) + +You will see the shapeshift change to "awaiting exchange" + +![image11](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/11.png) + +Then it will change to COMPLETE! + +![image12](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/12.png) + +After a while you will see it in your Monero account + +![image13](https://github.com/luuul/monero-site/blob/master/knowledge-base/user-guides/png/easiest_way/13.png) diff --git a/_i18n/ar/resources/user-guides/howto_fix_stuck_funds.md b/_i18n/ar/resources/user-guides/howto_fix_stuck_funds.md new file mode 100644 index 00000000..dfefddeb --- /dev/null +++ b/_i18n/ar/resources/user-guides/howto_fix_stuck_funds.md @@ -0,0 +1,30 @@ +في بعض الأحيان سوف تتعلق أموالك - سيكون لديك بعض الأموال المغلقه. هذه هي طريقة إصلاحها. + +- شغل محفظتك في واجهه سطر الأوامر (monero-wallet-cli) + +- إكتب + +> seed + +في سطر الأوامر قم بكتابه ال25 كلمه المخصصه لإستعاده محفظتك. هذه هي أأمن طريقه للحفاظ علي أموالك من الضياع. + +- إغلق واجهه سطر الأوامر بكتابه + +> exit + +- قم بعمل نسخة احتياطية من جميع ملفاتك المتعلقة بالمحفظة. وتشمل : + +> yourwalletname.bin +> yourwalletname.bin.keys +> yourwalletname.bin.address.txt + +يمكن القيام بذلك عن طريق نسخ الملفات إلى مجلد جديد. + +في بعض الأحيان عند إنشائك للمحفظه قد تكون أسميتها بدون .bin . في هذه الحاله سيكون إسم محفظتك بدون .bin في اﻵخر. + +- إحذف yourwallet.bin + +- شَغِل واجهه سطر الأوامر الخاصه بمونيرو, وإكتب إسم المحفظه الذي حذفته للتو + +- أدخل كلمه السر . ستقوم المحفظه الأن بالمزامنه ونأمل أن تكون الأموال متاحه لك الأن. + diff --git a/_i18n/ar/resources/user-guides/importing_blockchain.md b/_i18n/ar/resources/user-guides/importing_blockchain.md new file mode 100644 index 00000000..39d1517b --- /dev/null +++ b/_i18n/ar/resources/user-guides/importing_blockchain.md @@ -0,0 +1,56 @@ +# إستيراد سلسله الكُتل لواجهه المستخدم الرسوميه ( ويندوز ) + +### الخطوه 1 + +قم بتحميل الملف الحالي من https://downloads.getmonero.org/blockchain.raw; يُمكنك تخطي هذه الخُطوه إذا كنت تستورد سلسله الكتل من مصدر آخر. + +### الخطوه 2 + +ابحث عن مسار محفظة مونيرو (المجلد حيث قمت باستخراج محفظتك فيه). على سبيل المثال : + +`D:\monero-gui-0.10.3.1` + +قد يكون مسارك مختلفًا بُناءً على المكان الذي قررت فيه تنزيل محفظتك وإصدار نسخة المحفظه. + +### الخطوه 3 + +أعثر على مسار سلسله الكتل التي تم تنزيلها على سبيل المثال : + +`C:\Users\KeeJef\Downloads\blockchain.raw` + +قد يكون المكان مختلفًا حسب المكان الذي قمت بتنزيل سلسله الكتل به. + +### الخطوه 4 + +افتح نافذة موجه الأوامر. يمكنك القيام بذلك عن طريق الضغط على مفتاح Windows + R ، ثم كتابه `CMD` في المربع المنبثق + +### الخطوه 5 + +الآن تحتاج إلى التنقل باستخدام نافذة CMD إلى مسار محفظة مونيرو. يمكنك القيام بذلك عن طريق كتابة: + +`cd C:\YOUR\MONERO\WALLET\FILE\PATH\HERE` + +يجب أن يبدو مثل: + +`cd D:\monero-gui-0.10.3.1` + +إذا كانت محفظة مونيرو الخاصة بك موجودة على محرك أقراص آخر ، يمكنك استخدام `DriveLetter:` على سبيل المثال إذا كانت محفظة مونيرو الخاصة بك موجودة على محرك الأقراص D ، قم بإستخدام الأمر `D:` قبل أمر cd + +### الخطوه 6 + +الآن اكتب في نافذة موجه الأوامر : + +`monero-blockchain-import --input-file C:\YOUR\BLOCKCHAIN\FILE\PATH\HERE` + +علي سبيل المثال: + +`monero-blockchain-import --input-file C:\Users\KeeJef\Downloads\blockchain.raw` + +إذا قمت بتنزيل سلسله الكتل من مصدر موثوق به فيمكنك تعيين `verify 0` مما يقلل من الوقت اللازم للمزامنة. + +### الخطوه 7 + +بعد انتهاء سلسله الكتل من المزامنة ، يمكنك فتح محفظة مونيرو بشكل طبيعي. يمكن حذف ملف blockchain.raw الذي تم تنزيله. + + +Author: Kee Jefferys diff --git a/_i18n/ar/resources/user-guides/mine-to-pool.md b/_i18n/ar/resources/user-guides/mine-to-pool.md new file mode 100644 index 00000000..06976994 --- /dev/null +++ b/_i18n/ar/resources/user-guides/mine-to-pool.md @@ -0,0 +1,96 @@ +# إختيار حقل (تجمّع للتعدين) + +هُناك العديد من الحقول يمكنك الإختيار منها , قائمه بالحقول المتاحه موجوده بـ [moneropools.com](https://moneropools.com). +التعدين في حقل كبير قد يعني دفعات أكثر تواتراً. ولكن التعدين في حقل أصغر يساعد في الحفاظ علي لامركزيه الشبكه. + +# إختيار برنامج تعدين لوحده المعالجه المركزيه (CPU) + +تماماً كحقول التعدين هُناك العديد من برامج التعدين. يجب عليك إختيار المُناسب للجهاز الذي تريد التعدين عليه. هذا الدليل سيُغطي التعدين عن طريق وحده المعالجه المركزيه فقط, وسنقوم بإستخدام برنامج +[xmr-stak-cpu](https://github.com/fireice-uk/xmr-stak-cpu). من البدائل برنامج +[wolf's CPUMiner](https://github.com/wolf9466/cpuminer-multi) و برنامج +[sgminer-gm](https://github.com/genesismining/sgminer-gm). إعدادات هذه البرامج تختلف قليلاً ولن يتم تغطيتها في هذا الدليل. + +## لأنظمه ويندوز + +إذا كنت تستخدم نظام ويندوز يوفر مطور برنامج (xmr-stak-cpu) ملفات التنزيل علي +[GitHub release page](https://github.com/fireice-uk/xmr-stak-cpu/releases). + +حمّل `xmr-stak-cpu-win64.zip` وفك ضغطه في مكان سهل الوصول إليه. + +## لأنظمه التشغيل الأخري + +إذا كنت لا تستخدم نظام ويندوز فسيتعين عليك تجميع xmr-stak-cpu بنفسك ولحسن الحظ لأمر ليس بهذه الصعوبه. قبل أن تتمكن من تجميع برنامج التعدين ستحتاج إلى تثبيت بعض المتطلبات الأساسية الخاصة به. + +توزيعات Debian: + + sudo apt-get install libmicrohttpd-dev libssl-dev cmake build-essential + +توزيعات Red Hat: + + sudo yum install openssl-devel cmake gcc-c++ libmicrohttpd-devel + + + +بعد ذلك ستحتاج لإستخدام (cmake) لإنشاء ملفات الإنشاء شغل البرنامج وقم بنسخ ملف الإعدادات : + + mkdir build-$(gcc -dumpmachine) + cd $_ + cmake ../ + make -j$(nproc) + cp ../config.txt bin/ + cd bin + +لا تحتفل بعد حيث يحتاج برنامج التعدين إلى التهيئة. تشغيل البرنامج الآن يجب أن يعطيك كتلة من النص لنسخها ولصقها: + +![image1](png/mine_to_pool/1.png) + +إفتح `config.txt` وقم *بتبديل* سطرين `"cpu_threads_conf"`بالنص الذي قمت بنسخه, سيبدو كذلك بعدها : + +![image2](png/mine_to_pool/2.png) + +إنزل للأسفل في الملف إلي أن تجد سطر يحتوي علي `"pool_address"`. *بدّل* المحتوي بين علامات الإقتباس لعنوان ومنفذ حقل التعدين الذي إخترته سابقاً , ستجد هذه البيانات في موقع حقل التعدين. + +ضع عنوان محفظتك بين علامات الاقتباس في عنوان المحفظة. يمكنك ترك كلمة المرور فارغة ما لم يحدد حقل التعدين خلاف ذلك. + +بعد ذلك ، يجب أن يبدو ملف الإعدادات الخاص بك كما يلي: + +![image3](png/mine_to_pool/3.png) + +# تشغيل برنامج التعدين + +إحفظ ملف *الإعدادات* وشغل برنامج التعدين + +![image4](png/mine_to_pool/4.png) + +بعض الحقول تسمح لك بمتابعه قوه التعدين الخاصه بعنوانك عن طريق لصق عنوانك في موقعهم. يمكنك أيضاً متابعه قوه التعدين الخاصه بك عن طريق ضغط مفتاح `h` + +# ضبط برنامج التعدين + +ربما تري رسائل مثل : + + [2017-07-09 12:04:02] : MEMORY ALLOC FAILED: mmap failed + +وهذا يعني أنه يمكنك الحصول على زيادة بنسبة 20٪ من قوه التعدين من خلال تمكين الصفحات الكبيرة. + +## الصفحات الكبيره علي ليُنكس + +أولاً إغلق برنامج التعدين ( إذا كان مازال يعمل ), وقم بتشغيل الأمر التالي لتفعيل الصفحات الكبيره وإبدأ برنامج التعدين كـROOT: + + sudo sysctl -w vm.nr_hugepages=128 + sudo ./xmr-stak-cpu + +## الصفحات الكبيره علي ويندوز + +مأخوذ من `config.txt`: + +>إفتراضياً سنحاول تخصيص الصفحات الكبيره ويعني ذلك أنك تحتاج الشتغيل بصلاحيات المدير علي ويندوز +يجب أن تُعدل سياسات المجموعات علي نظامك لتمكين الصفحات الكبيره. وهذه هي الخطوات +1. في القائمة "ابدأ" ، انقر فوق "تشغيل". في المربع فتح ، اكتب gpedit.msc. +2. في وحده تحكم مُحرر سياسات المجموعات قم بتوسيع إعدادات الحاسوب وبعد ذلك توسيع إعدادات الويندوز +3. وسّع إعدادات الحمايه وبعد ذلك وسّع إعدادات السياسات المحليه. +4. حدد مجلد تعيين حقوق المستخدم +5. سيتم عرض السياسات في نافذه التفاصيل. +6. في النافذه انقر نقراً مزدوجاً فوق تأمين الصفحات في الذاكرة. +7. في إعدادات الأمان المحلية - قفل الصفحات في الذاكره ، انقر فوق إضافة مستخدم أو مجموعة. +8. في مربع حوار إختيار المُستخدمين أو حساب الخدمات أو الجماعات قم بإضافه حساب لتقوم بتشغيل برنامج التعدين عليه +9. إعادة تشغيل لتثبيت التغييرات diff --git a/_i18n/ar/resources/user-guides/mining_with_xmrig_and_docker.md b/_i18n/ar/resources/user-guides/mining_with_xmrig_and_docker.md new file mode 100644 index 00000000..bec981c0 --- /dev/null +++ b/_i18n/ar/resources/user-guides/mining_with_xmrig_and_docker.md @@ -0,0 +1,36 @@ +## مُقدمه + +هذا الدليل ذو شقين ، سهولة التعدين في توزيعات لينكس وبعض الأمان الإضافي حول التعدين حيث أن معظم هذه البرامج لم تخضع للتدقيق الأمني. + +في نهايه هذا الدليل ستكون قادراً علي علي النوم بطمأنينه أكثر علماً بأنه إذا تم إختراق برنامج التعدين فسيكون نظام التشغيل الخاص بك بمأمن. + +### لماذا Docker + +[Docker](https://www.docker.com/) يتم استخدامه حيث أنه الأكثر شهرة وغالباً ستجده مُثبت بالفعل. + +الكونتينر المُستخدم هو [alpine-xmrig](https://hub.docker.com/r/bitnn/alpine-xmrig/) كما هو مُسمي هو مبني علي صوره [Alpine Linux](https://www.alpinelinux.org/) . + +إذا كنت مهتمًا ببدء استخدام Docker ، فإليك بعض مراجع البدء الجيدة . +* Arch Linux Wiki [Docker Page](https://wiki.archlinux.org/index.php/Docker) +* Container Solutions [Security Cheat Sheet](http://container-solutions.com/content/uploads/2015/06/15.06.15_DockerCheatSheet_A2.pdf) +* Digital Oceans [Dockerfile Howto](https://www.digitalocean.com/community/tutorials/docker-explained-using-dockerfiles-to-automate-building-of-images). + +للتثبيت الخاص بتوزيعه معينه يرجعي الرجوع إلي موقع [Docker Docs](https://docs.docker.com/engine/installation/) . + +### لماذا XMRig + +[XMRig](https://github.com/xmrig/xmrig) هو برنامج تعدين قوي. نواتج وإحصائيات سلسه, لا يحتاج إلي تبعيات وحجمه هو حوالي ~4MB مما يجعله سهل التشغيل. + +#### الخطوه 1: التعدين بواسطه XMRig + +شَغِل التالي: + +```bash +# docker run --restart unless-stopped --read-only -m 50M -c 512 bitnn/alpine-xmrig -o POOL01 -o POOL02 -u WALLET -p PASSWORD -k +# docker run --restart unless-stopped --read-only -m 50M -c 512 bitnn/alpine-xmrig -o pool.supportxmr.com:7777 -u 45CJVagd6WwQAQfAkS91EHiTyfVaJn12uM4Su8iz6S2SHZ3QthmFM9BSPHVZY388ASWx8G9Wbz4BA24RQZUpGczb35fnnJz -p docker:secret -k +``` + +#### الخطوه 2: لا يوجد خطوه أخري + +لقد قمت بما يجب القيام به بالفعل. تقوم الأن بالتعدين بواسطه البرنامج إضغط `ctrl+c` للخروج من برنامج التعدين او قم بإضافه `-d` بعد `docker run` حتي يعمل البرنامج في الخلفيه. + diff --git a/_i18n/ar/resources/user-guides/monero-wallet-cli.md b/_i18n/ar/resources/user-guides/monero-wallet-cli.md new file mode 100644 index 00000000..d2c60b97 --- /dev/null +++ b/_i18n/ar/resources/user-guides/monero-wallet-cli.md @@ -0,0 +1,114 @@ +# واجهه سطر الأوامر (monero-wallet-cli) + +واجهه سطر الأوامر `monero-wallet-cli` هو برنامج المحفظه الذي يأتي مع مونيرو. إنه برنامج وحده تحكم ويُدير الحساب. بينما في البتكوين تُدير المحفظه كلاً من الحساب وسلسله الكُتل. يقوم مونيرو بفصلهم : الخادم `monerod` يُدير سلسله الكُتل و واجهه سطر الأوامر `monero-wallet-cli` تُدير الحساب. + +سيقوم هذا الدليل بإطلاعك علي كيفيه القيام بالعديد من العمليات من واجهه سطر الأوامر . يفترض هذا الدليل أنك تستخدم أحدث نسخه من برامج مونيرو وقمت بالفعل بإنشاء حساب كما هو موضح بالدلائل الأخري. + + +## التحقق من رصيدك + +مُنذ أنه هناك برامج مختلفه لمُعالجه كلاً من سلسله الكتل والمحفظه , العديد من إستخدامات واجهه سطر الأوامر تحتاج العمل مع الخادم. من ذلك التحقق من المعاملات القادمه إلي عنوانك. بمجرد تشغيلك الخادم وواجهه سطر الأوامر إكتب `balance` لعرض رصيدك . + +مثال: + +يقوم ذلك بسحب الكتل التي لم تراها المحفظه بعد من الخادم وتحديث رصيدك, تجري هذه العمليه عاده في الخلفيه كل دقيقه او نحو ذلك . لرؤيه الرصيد بدون تحديث : + + balance + Balance: 64.526198850000, unlocked balance: 44.526198850000, including unlocked dust: 0.006198850000 + +في هذا المثال, `Balance` هو رصيدك الكلي. `unlocked balance` هو الرصيد المُتاح للإنفاق. تحتاج المعاملات الحديثه 10 تأكيدات علي سلسله الكتل قبلما تكون متاحه للإنفاق.`unlocked dust` يشير إلى كميات صغيرة جدًا من النواتج غير المنفقة التي قد تكون تراكمت في حسابك. + +## إرسال مونيرو + +سوف تحتاج إلي عنوان اساسي ترسل إليه ( سلسله طويله تبدأ بـ'4'), وربما تحتاج إلي هويه المعامله إذا كان المُستَلِم يتطلب واحداً, في هذه الحاله ربما يرسل لك المُستلم عنوان مُدمج وهو عباره عن العنوان الأساسي مدمج مع هويه المعامله في عنوان واحد. + +### الإرسال إلي عنوان أساسي: + + transfer ADDRESS AMOUNT PAYMENTID + +إستبدل `ADDRESS` بعنوان المُرسل إليه , و `AMOUNT` بالكميه المراد إرسالها, و `PAYMENTID` بهويه المعامله إذا ووجدت. هويه المعامله هي إختياريه إذا لم يتطلبها المُرسل إيه قم بتجاهلها. + +### الإرسال إلي عنوان مُدمج: + + transfer ADDRESS AMOUNT + +في هذه الحاله هويه المعامله مدمجه في العنوان الأساسي. + +### حدد عدد المخرجات الخاصة بالمعامله: + + transfer RINGSIZE ADDRESS AMOUNT + +إستبدل `RINGSIZE` بعدد المُخرجات المُراد إستخدامه ** إذا لم يتم التحدد فالعدد الإفتراضي هو 7 **. من الجيد إستخدام العدد الإفتراضي, لكن بإمكانك تزويد العدد لمزيد من المُخرجات. كلما كان العدد كبيراً كلما كان حجم المعامله اكبر وكلما زادت رسوم التحويل. + + +## إستلام مونيرو + +إذا كان لديك عنوان مونيرو خاص بك, كل ما عليك فعله هو إعطاء هذا العنوان إلي المُرسل. + +يُمكنك إيجاد عنوانك عن طريق: + + address + +نظراً لأن مونيرو سري لن تري عنوان المصدر الذي أتت منه الأموال. إذا كنت تريد تحديد هويه الراسل سيتحتم عليك إخبار الراسل بإستخدام هويه للمعامله, وهو عباره عن علامه عشوائيه يتم إرفاقها بالمعامله. لسهوله الإستخدام يمكنك إنشاء عنوان مع هويه للمعامله من خلال : + + integrated_address + +سيقوم هذا بإنشاء هويه معامله عشوائيه ويُعطيك العنوان الذي يتضمن حسابك وهويه المعامله تلك. إذا كنت تريد إستخدام هويه معامله معينه يمكنك فعل ذلك من خلال : + + integrated_address 12346780abcdef00 + +الدفعات القادمه لعنوان مدمج تم إنشائه من حسابك سيتم إضافتها إلي حسابك مربوطه بهويه المعامله تلك حتي يمكنك التفريق بين المعاملات. + + +## إثبات لطرف ثالث أنك قد دفعت لشخص ما + +إذا دفعت لتاجر ويدّعي التاجر أنه لم يستلم الأموال ربما يجب عليك إثبات الدفع لطرف تالت - أو ربما للتاجر نفسه إذا كان خطأ غير مقصود. مونيرو خاص ولذلك لا يُمكنك الإشاره للمعامله في سلسله الكتل لأنه لا يُمكن معرفه الراسل أو المُستلم منها. مع ذلك يُمكنك توفير المفتاح الخاص بالمعامله . وبالمفتاح الخاص بالمعامله يمكن معرفه إذا تم إرسال الأموال لهذا العنوان أم لا. لاحظ أن تخزين المفاتيح الخاصه بالمعاملات غير متاح إفتراضياً ويجب عليك إتاحته قبل الإرسال إذا كنت تعتقد أنه ربما تحتاجه : + + set store-tx-info 1 + +يُمكنك استرداد مفتاح معامله سابقه : + + get_tx_key 1234567890123456789012345678901212345678901234567890123456789012 + +إدخل هويه المعامله التي تريد الحصول علي مفتاحها. تذكر أنه ربما إنقسم الدفع إلي عده معاملات وسوف تحتاج إلي عده مفاتيح. بعد ذلك يُمكن إرسال هذا المفتاح او المفاتيح مع هويه المعامله والعنوان المرسل إليه لإثبات الدفع. لاحظ أن الطرف التالت إذا كان يعلم عنوان حسابك سيتمكن من معرفه الباقي العائد إليك من هذه المعامله. + +إذا كنت أنت الطرف التالت ( إذا كان هُناك شخص يريد إثبات لك أنه قد أرسل الأموال لحساب معين) , يمكنك التحقق من ذلك عن طريق: + + check_tx_key TXID TXKEY ADDRESS + +قم بتبديل `TXID`و `TXKEY` و `ADDRESS` بهويه المعامله و مفتاح المعامله و عنوان حساب المُستلِم. ستقوم واجهه سطر الأوامر بالبحث عن المعامله وإخبارك كم تم دفعه إلي ذلك الحساب. + + +## الحصول على فرصة لتأكيد / إلغاء المدفوعات + +إذا كنت ترغب في الحصول على فرصة تأكيد أخيرة عند إرسال دفعة: + + set always-confirm-transfers 1 + + +## كيفية العثور على دفعة لك + +إذا تلقيت دفعة باستخدام هويه معامله محدده ، فيمكنك البحث عنها: + + payments PAYMENTID + +يُمكنك تحديد أكثر من هويه معامله واحده. + +بشكل عام ، يمكنك مراجعة المدفوعات الواردة والصادرة: + + show_transfers + +يُمكنك تحديد طول معين لسرد المعاملات وطلب المعاملات الصادره أو الوارده فقط , مثال: + + show_transfers in 650000 + +سوف يعرض فقط الدفعات الوارده بعد الكتله 650000 . يمكنك أيضاً تحديد نطاق للكتل. + +إذا كنت ترغب في التعدين يمكنك القيام بذلك من المحفظة: + + start_mining 2 + +سيقوم ذلك ببدأ التعدين في الخادم . لاحظ أن هذا تعدين فردي وربما يأخذ وقت طويلاً لإيجاد كتله, لإيقاف التعدين: + + stop_mining + diff --git a/_i18n/ar/resources/user-guides/monero_tools.md b/_i18n/ar/resources/user-guides/monero_tools.md new file mode 100644 index 00000000..701011c0 --- /dev/null +++ b/_i18n/ar/resources/user-guides/monero_tools.md @@ -0,0 +1,17 @@ +# أدوات مونيرو + +هذه الأدوات يُمكن إستخدامها لجمع المعلومات حول شبكه مونيرو أو بيانات مُعاملاتك في سلسله الكتل. + +### [تحقق من إستلام المُستلم للأموال](http://xmrtests.llcoins.net/checktx.html) + +### [أدوات إنشاء حساب مونيرو](https://xmr.llcoins.net/) + +### [عدد خوادم مونيرو](http://moneronodes.i2p.xyz/) + +### [خريطه خوادم مونيرو](https://monerohash.com/nodes-distribution.html) + +### [مُنشيء حساب مونيرو بِدون إتصال بالإنترنت](http://moneroaddress.org/) + +### [إحصائيات شبكه مونيرو](http://moneroblocks.info/stats) + +### [Monero.how إحصائيات](https://www.monero.how/) diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/1.png b/_i18n/ar/resources/user-guides/png/create_wallet/1.png new file mode 100644 index 00000000..44acf51b Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/1.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/10.png b/_i18n/ar/resources/user-guides/png/create_wallet/10.png new file mode 100644 index 00000000..2f248c9d Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/10.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/11.png b/_i18n/ar/resources/user-guides/png/create_wallet/11.png new file mode 100644 index 00000000..f8bb9989 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/11.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/12.png b/_i18n/ar/resources/user-guides/png/create_wallet/12.png new file mode 100644 index 00000000..2e1f69d6 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/12.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/13.png b/_i18n/ar/resources/user-guides/png/create_wallet/13.png new file mode 100644 index 00000000..2db5d603 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/13.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/14.png b/_i18n/ar/resources/user-guides/png/create_wallet/14.png new file mode 100644 index 00000000..bf2906e2 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/14.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/15.png b/_i18n/ar/resources/user-guides/png/create_wallet/15.png new file mode 100644 index 00000000..7c675edf Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/15.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/16.png b/_i18n/ar/resources/user-guides/png/create_wallet/16.png new file mode 100644 index 00000000..ab23b572 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/16.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/17.png b/_i18n/ar/resources/user-guides/png/create_wallet/17.png new file mode 100644 index 00000000..97ea15bc Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/17.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/18.png b/_i18n/ar/resources/user-guides/png/create_wallet/18.png new file mode 100644 index 00000000..20546a9a Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/18.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/19.png b/_i18n/ar/resources/user-guides/png/create_wallet/19.png new file mode 100644 index 00000000..5a7088e2 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/19.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/2.png b/_i18n/ar/resources/user-guides/png/create_wallet/2.png new file mode 100644 index 00000000..164aa6b6 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/2.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/20.png b/_i18n/ar/resources/user-guides/png/create_wallet/20.png new file mode 100644 index 00000000..c5169249 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/20.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/21.png b/_i18n/ar/resources/user-guides/png/create_wallet/21.png new file mode 100644 index 00000000..090ff767 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/21.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/22.png b/_i18n/ar/resources/user-guides/png/create_wallet/22.png new file mode 100644 index 00000000..8c7a7669 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/22.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/23.png b/_i18n/ar/resources/user-guides/png/create_wallet/23.png new file mode 100644 index 00000000..e2dfc0c4 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/23.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/3.png b/_i18n/ar/resources/user-guides/png/create_wallet/3.png new file mode 100644 index 00000000..f4f4436e Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/3.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/4.png b/_i18n/ar/resources/user-guides/png/create_wallet/4.png new file mode 100644 index 00000000..36be1be0 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/4.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/5.png b/_i18n/ar/resources/user-guides/png/create_wallet/5.png new file mode 100644 index 00000000..56c6733a Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/5.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/6.png b/_i18n/ar/resources/user-guides/png/create_wallet/6.png new file mode 100644 index 00000000..8e0d7950 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/6.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/7.png b/_i18n/ar/resources/user-guides/png/create_wallet/7.png new file mode 100644 index 00000000..c1852782 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/7.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/8.png b/_i18n/ar/resources/user-guides/png/create_wallet/8.png new file mode 100644 index 00000000..ce02508b Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/8.png differ diff --git a/_i18n/ar/resources/user-guides/png/create_wallet/9.png b/_i18n/ar/resources/user-guides/png/create_wallet/9.png new file mode 100644 index 00000000..cac31479 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/create_wallet/9.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/01.png b/_i18n/ar/resources/user-guides/png/easiest_way/01.png new file mode 100644 index 00000000..17c55b2d Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/01.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/02.png b/_i18n/ar/resources/user-guides/png/easiest_way/02.png new file mode 100644 index 00000000..91e1bfd1 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/02.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/03.png b/_i18n/ar/resources/user-guides/png/easiest_way/03.png new file mode 100644 index 00000000..dded71ad Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/03.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/04.png b/_i18n/ar/resources/user-guides/png/easiest_way/04.png new file mode 100644 index 00000000..e657d431 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/04.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/05.png b/_i18n/ar/resources/user-guides/png/easiest_way/05.png new file mode 100644 index 00000000..00d2b26a Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/05.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/06.png b/_i18n/ar/resources/user-guides/png/easiest_way/06.png new file mode 100644 index 00000000..4d55286c Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/06.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/07.png b/_i18n/ar/resources/user-guides/png/easiest_way/07.png new file mode 100644 index 00000000..715245b2 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/07.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/08.png b/_i18n/ar/resources/user-guides/png/easiest_way/08.png new file mode 100644 index 00000000..bfc459a8 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/08.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/09.png b/_i18n/ar/resources/user-guides/png/easiest_way/09.png new file mode 100644 index 00000000..e632bbb8 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/09.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/10.png b/_i18n/ar/resources/user-guides/png/easiest_way/10.png new file mode 100644 index 00000000..3a933733 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/10.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/11.png b/_i18n/ar/resources/user-guides/png/easiest_way/11.png new file mode 100644 index 00000000..eaa4a5b9 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/11.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/12.png b/_i18n/ar/resources/user-guides/png/easiest_way/12.png new file mode 100644 index 00000000..e38159ec Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/12.png differ diff --git a/_i18n/ar/resources/user-guides/png/easiest_way/13.png b/_i18n/ar/resources/user-guides/png/easiest_way/13.png new file mode 100644 index 00000000..ed3b707d Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/easiest_way/13.png differ diff --git a/_i18n/ar/resources/user-guides/png/mine_to_pool/1.png b/_i18n/ar/resources/user-guides/png/mine_to_pool/1.png new file mode 100644 index 00000000..a6e76528 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/mine_to_pool/1.png differ diff --git a/_i18n/ar/resources/user-guides/png/mine_to_pool/2.png b/_i18n/ar/resources/user-guides/png/mine_to_pool/2.png new file mode 100644 index 00000000..83a7dd16 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/mine_to_pool/2.png differ diff --git a/_i18n/ar/resources/user-guides/png/mine_to_pool/3.png b/_i18n/ar/resources/user-guides/png/mine_to_pool/3.png new file mode 100644 index 00000000..70aeea2a Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/mine_to_pool/3.png differ diff --git a/_i18n/ar/resources/user-guides/png/mine_to_pool/4.png b/_i18n/ar/resources/user-guides/png/mine_to_pool/4.png new file mode 100644 index 00000000..13361a0e Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/mine_to_pool/4.png differ diff --git a/_i18n/ar/resources/user-guides/png/prove-payment/check-payment.png b/_i18n/ar/resources/user-guides/png/prove-payment/check-payment.png new file mode 100644 index 00000000..48bc49a9 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/prove-payment/check-payment.png differ diff --git a/_i18n/ar/resources/user-guides/png/prove-payment/history.png b/_i18n/ar/resources/user-guides/png/prove-payment/history.png new file mode 100644 index 00000000..bad5adde Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/prove-payment/history.png differ diff --git a/_i18n/ar/resources/user-guides/png/prove-payment/payment-checked.png b/_i18n/ar/resources/user-guides/png/prove-payment/payment-checked.png new file mode 100644 index 00000000..e858ea01 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/prove-payment/payment-checked.png differ diff --git a/_i18n/ar/resources/user-guides/png/prove-payment/payment-proof.png b/_i18n/ar/resources/user-guides/png/prove-payment/payment-proof.png new file mode 100644 index 00000000..76f626ea Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/prove-payment/payment-proof.png differ diff --git a/_i18n/ar/resources/user-guides/png/remote_node/remote-node-screenshot.png b/_i18n/ar/resources/user-guides/png/remote_node/remote-node-screenshot.png new file mode 100644 index 00000000..2dc0372c Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/remote_node/remote-node-screenshot.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_account/all-set-up.png b/_i18n/ar/resources/user-guides/png/restore_account/all-set-up.png new file mode 100644 index 00000000..aebc5e4c Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_account/all-set-up.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_account/cancel-opening.png b/_i18n/ar/resources/user-guides/png/restore_account/cancel-opening.png new file mode 100644 index 00000000..1d987435 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_account/cancel-opening.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_account/choose-language.png b/_i18n/ar/resources/user-guides/png/restore_account/choose-language.png new file mode 100644 index 00000000..d49f8ffa Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_account/choose-language.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_account/choose-restore.png b/_i18n/ar/resources/user-guides/png/restore_account/choose-restore.png new file mode 100644 index 00000000..fbba0bb0 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_account/choose-restore.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_account/daemon-settings.png b/_i18n/ar/resources/user-guides/png/restore_account/daemon-settings.png new file mode 100644 index 00000000..0f70dee0 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_account/daemon-settings.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_account/restore-wallet.png b/_i18n/ar/resources/user-guides/png/restore_account/restore-wallet.png new file mode 100644 index 00000000..690b363e Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_account/restore-wallet.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_account/wallet-password.png b/_i18n/ar/resources/user-guides/png/restore_account/wallet-password.png new file mode 100644 index 00000000..110a1fb3 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_account/wallet-password.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_from_keys/all-set-up.png b/_i18n/ar/resources/user-guides/png/restore_from_keys/all-set-up.png new file mode 100644 index 00000000..aebc5e4c Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_from_keys/all-set-up.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_from_keys/cancel-opening.png b/_i18n/ar/resources/user-guides/png/restore_from_keys/cancel-opening.png new file mode 100644 index 00000000..1d987435 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_from_keys/cancel-opening.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_from_keys/choose-language.png b/_i18n/ar/resources/user-guides/png/restore_from_keys/choose-language.png new file mode 100644 index 00000000..d49f8ffa Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_from_keys/choose-language.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_from_keys/choose-restore.png b/_i18n/ar/resources/user-guides/png/restore_from_keys/choose-restore.png new file mode 100644 index 00000000..fbba0bb0 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_from_keys/choose-restore.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_from_keys/daemon-settings.png b/_i18n/ar/resources/user-guides/png/restore_from_keys/daemon-settings.png new file mode 100644 index 00000000..0f70dee0 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_from_keys/daemon-settings.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_from_keys/restore-wallet.png b/_i18n/ar/resources/user-guides/png/restore_from_keys/restore-wallet.png new file mode 100644 index 00000000..20b4c3b7 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_from_keys/restore-wallet.png differ diff --git a/_i18n/ar/resources/user-guides/png/restore_from_keys/wallet-password.png b/_i18n/ar/resources/user-guides/png/restore_from_keys/wallet-password.png new file mode 100644 index 00000000..bed1c313 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/restore_from_keys/wallet-password.png differ diff --git a/_i18n/ar/resources/user-guides/png/solo_mine_GUI/01.PNG b/_i18n/ar/resources/user-guides/png/solo_mine_GUI/01.PNG new file mode 100644 index 00000000..37493162 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/solo_mine_GUI/01.PNG differ diff --git a/_i18n/ar/resources/user-guides/png/solo_mine_GUI/02.PNG b/_i18n/ar/resources/user-guides/png/solo_mine_GUI/02.PNG new file mode 100644 index 00000000..1f576566 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/solo_mine_GUI/02.PNG differ diff --git a/_i18n/ar/resources/user-guides/png/solo_mine_GUI/03.PNG b/_i18n/ar/resources/user-guides/png/solo_mine_GUI/03.PNG new file mode 100644 index 00000000..ac259e59 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/solo_mine_GUI/03.PNG differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-cd.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-cd.png new file mode 100644 index 00000000..8fb3b91e Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-cd.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-certutil.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-certutil.png new file mode 100644 index 00000000..935446eb Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-certutil.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-launch.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-launch.png new file mode 100644 index 00000000..8c2919f1 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-cmd-launch.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-save-file.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-save-file.png new file mode 100644 index 00000000..2b84180c Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-save-file.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-save-location.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-save-location.png new file mode 100644 index 00000000..fc02f962 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-save-location.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-windowsfiles.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-windowsfiles.png new file mode 100644 index 00000000..36adfc6e Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-getmonero-windowsfiles.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-word-cmd-compare.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-word-cmd-compare.png new file mode 100644 index 00000000..057d9c5c Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-word-cmd-compare.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-word-hashfile.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-word-hashfile.png new file mode 100644 index 00000000..06917e0a Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_binary-word-hashfile.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getkey-rightclick.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getkey-rightclick.png new file mode 100644 index 00000000..58a8d1f7 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getkey-rightclick.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getkey-savefilename.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getkey-savefilename.png new file mode 100644 index 00000000..64be96cf Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getkey-savefilename.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hashes-savefilename.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hashes-savefilename.png new file mode 100644 index 00000000..d47c404c Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hashes-savefilename.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hasheslink.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hasheslink.png new file mode 100644 index 00000000..90100511 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hasheslink.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hashespage-rightclick.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hashespage-rightclick.png new file mode 100644 index 00000000..6b8d86c9 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_getmonero-hashespage-rightclick.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-components.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-components.png new file mode 100644 index 00000000..2217caef Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-components.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-complete.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-complete.png new file mode 100644 index 00000000..49f23de2 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-complete.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-finish.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-finish.png new file mode 100644 index 00000000..6f1b5bea Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-finish.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-language.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-language.png new file mode 100644 index 00000000..94796396 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-language.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-security.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-security.png new file mode 100644 index 00000000..0a056dfb Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-security.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-welcome.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-welcome.png new file mode 100644 index 00000000..da4313b5 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install-welcome.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install.png new file mode 100644 index 00000000..21466e18 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-install.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-launch.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-launch.png new file mode 100644 index 00000000..ac58bea6 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-launch.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-donation.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-donation.png new file mode 100644 index 00000000..1748fb71 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-donation.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-downloadbutton.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-downloadbutton.png new file mode 100644 index 00000000..64525563 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-downloadbutton.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile-location.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile-location.png new file mode 100644 index 00000000..31a3924d Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile-location.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile-openfolder.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile-openfolder.png new file mode 100644 index 00000000..a51893db Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile-openfolder.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile.png new file mode 100644 index 00000000..75bd79d7 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-getmonero-rightclick.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-getmonero-rightclick.png new file mode 100644 index 00000000..1452776b Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-getmonero-rightclick.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-getmonero-savename.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-getmonero-savename.png new file mode 100644 index 00000000..8bbd7995 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-getmonero-savename.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-badsig.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-badsig.png new file mode 100644 index 00000000..8a89f0ab Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-badsig.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-goodsig.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-goodsig.png new file mode 100644 index 00000000..ea92fef4 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-goodsig.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-verify-button-filename.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-verify-button-filename.png new file mode 100644 index 00000000..0a021ca8 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-verify-button-filename.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-verify-button.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-verify-button.png new file mode 100644 index 00000000..852a2948 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_hashes-kleo-verify-button.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-fingerprint.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-fingerprint.png new file mode 100644 index 00000000..713cc08b Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-fingerprint.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-finish.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-finish.png new file mode 100644 index 00000000..aa760389 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-finish.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-forself.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-forself.png new file mode 100644 index 00000000..5ad6ae59 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-forself.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-pinentry.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-pinentry.png new file mode 100644 index 00000000..6184e406 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-certify-pinentry.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-decryptverifybutton.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-decryptverifybutton.png new file mode 100644 index 00000000..3a5e0c6d Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-decryptverifybutton.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeydetails.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeydetails.png new file mode 100644 index 00000000..6bc04035 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeydetails.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeys-pinentry.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeys-pinentry.png new file mode 100644 index 00000000..3d29e1d2 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeys-pinentry.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeysnow.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeysnow.png new file mode 100644 index 00000000..c9509ee6 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeysnow.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-import-location.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-import-location.png new file mode 100644 index 00000000..1ecb720b Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-import-location.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-importkey.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-importkey.png new file mode 100644 index 00000000..dfc56298 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-importkey.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-keycreate-success.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-keycreate-success.png new file mode 100644 index 00000000..31292975 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-keycreate-success.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-startverifyprocess.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-startverifyprocess.png new file mode 100644 index 00000000..dfe905bc Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-startverifyprocess.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-verifykeydetails.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-verifykeydetails.png new file mode 100644 index 00000000..63b300d1 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-verifykeydetails.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-launch.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-launch.png new file mode 100644 index 00000000..fd12e487 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_kleopatra-launch.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_verify-selecthashesfile-rightclick.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_verify-selecthashesfile-rightclick.png new file mode 100644 index 00000000..4e3e7aa8 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_verify-selecthashesfile-rightclick.png differ diff --git a/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_verify-successfulverify.png b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_verify-successfulverify.png new file mode 100644 index 00000000..1320ca7a Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/verify_binary_windows_beginner/verify-win_verify-successfulverify.png differ diff --git a/_i18n/ar/resources/user-guides/png/view-only/Success.png b/_i18n/ar/resources/user-guides/png/view-only/Success.png new file mode 100644 index 00000000..4aedb694 Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/view-only/Success.png differ diff --git a/_i18n/ar/resources/user-guides/png/view-only/create-view-only.png b/_i18n/ar/resources/user-guides/png/view-only/create-view-only.png new file mode 100644 index 00000000..f63adccd Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/view-only/create-view-only.png differ diff --git a/_i18n/ar/resources/user-guides/png/view-only/settings.png b/_i18n/ar/resources/user-guides/png/view-only/settings.png new file mode 100644 index 00000000..e2f95a1c Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/view-only/settings.png differ diff --git a/_i18n/ar/resources/user-guides/png/view-only/wallet-password.png b/_i18n/ar/resources/user-guides/png/view-only/wallet-password.png new file mode 100644 index 00000000..27c9a45f Binary files /dev/null and b/_i18n/ar/resources/user-guides/png/view-only/wallet-password.png differ diff --git a/_i18n/ar/resources/user-guides/prove-payment.md b/_i18n/ar/resources/user-guides/prove-payment.md new file mode 100644 index 00000000..d0309749 --- /dev/null +++ b/_i18n/ar/resources/user-guides/prove-payment.md @@ -0,0 +1,77 @@ +### إثبات المدفوعات + +عند إرسال أموال إلى أحد الأطراف ويتم التنازع علي أن المعامله قد تمت أم لا يجب أن تكون قادرًا على إثبات الدفع. + +في البتكوين يتم ذلك من خلال البحث عن معرّف المعامله حيث أن بيانات المُرسل والمُرسَل إليه والكميه المُرسله متاحه للعرض. + +مونيرو خاص وسري ولذلك تلك البيانات غير متاحه علي سلسله الكتل لذلك هُناك خطوات أخري لإثبات إتمام الدفع. + +مثال : حتي تقوم مريم بالإثبات إلي محمود أنها قامت بإرسال الدفعه إلي عبدالحميد , يجب علي ساره تزويد محمود بثلاثه أجزاء من المعلومات وهي : + +- مُعرّف المعامله , كما في البتكوين. +- عنوان حساب عبدالحميد , كما في البتكوين. +- مفتاح المعامله, وهذه التقنيه موجوده فقط في مونيرو وعملات كريبتونوت الأخري (CryptoNote). + +حينما قامت مريم بالمُعامله تم تلقائياً إنشاء مفتاح مميز فقط لهذه المعامله. + +#### واجهه سطر الأوامر (CLI) + +يُمكن لمريم الإستعلام عن مفتاح المعامله في محفظه واجهه سطر الأوامر (كان إسمها في السابق المحفظه البسيطه) بالأمر التالي: + +> get_tx_key TXID + +يجب علي مريم وضع معرف المعامله بدلاً من TXID و سيتم عرض مفتاح المعاملة المميز. + +لاحظ: يجب تفعيل تخزين مفاتيح المعاملات في واجهه سطر الأوامر حتي يتم هذا الامر بنجاح . للتأكد من ذلك : + +> set + +إذا كانت القيمه 0 فإجعلها 1: + +> set store-tx-info 1 + +#### الواجهه الرسوميه (GUI) + +يُمكن لمريم فتح الواجهه الرسوميه والذهاب إلي صفحه سجل المُعاملات لرؤيه تفاصيل المُعامله: + +![History](png/prove-payment/history.png) + +من هُنا يُمكنها نسخ معرف المعامله وعنوان حساب عبدالحميد بالنقر علي كلاً منهم. وبالضغط علي حرف "ت" للحصول علي تأكييد المعامله (مفتاح المعامله): + +![Payment proof](png/prove-payment/payment-proof.png) + + +--- + +يُمكن لمريم الأن إرسال البيانات اللازمه إلي محمود وهي مفتاح المعامله ومعرف المعامله وعنوان عبدالحميد. + +لاحظ: إذا كان هُناك أكثر من مُعامله يجب إعاده هذه الخطوات لكل معامله منهم. + +### تحقق من المدفوعات + +إستلم محمود الأن البيانات ويُريد التأكد من صحه المعامله علي سلسله كتل متزامنه مع الشبكه + +#### واجهه سطر الأوامر (CLI) + +يكتب محمود في واجهه سطر الأوامر : + +> check_tx_key TXID TXKEY ADDRESS + +مع إستبدال TXID TXKEY ADDRESS بالبيانات التي أرسلتها مريم وستقوم واجهه سطر الأوامر بالبحث عن المعامله في سلسله الكتل وعرض تفاصيل المعامله . يجب أن يتأكد محمود من أن عنوان الحساب يخص عبدالحميد بالفعل, كما يحدث في البتكوين. + +#### الواجهه الرسوميه (GUI) + +يفتح محمود إلي الواجهه الرسوميه ويذهب إلي صفحه مُتقدم > صفحه إثبات/تحقق ويملأ البيانات اللازمه : + +![Check payment](png/prove-payment/check-payment.png) + +بالنقر علي تحقق سوف يتم إخبار محمود بالكميه المُرسله إلي ذلك العنوان وعدد التأكيدات علي تلك المعامله: + +![Payment checked](png/prove-payment/payment-checked.png) + + +--- + +جب أن يتأكد محمود من أن عنوان الحساب يخص عبدالحميد بالفعل, كما يحدث في البتكوين. + +لاحظ: إذا كان هُناك أكثر من مُعامله يجب إعاده هذه الخطوات لكل معامله منهم. diff --git a/_i18n/ar/resources/user-guides/remote_node_gui.md b/_i18n/ar/resources/user-guides/remote_node_gui.md new file mode 100644 index 00000000..f437cd49 --- /dev/null +++ b/_i18n/ar/resources/user-guides/remote_node_gui.md @@ -0,0 +1,7 @@ +## إيجاد خادم +أولاً يجب عليك إيجاد خادم للإتصال به! يحتوي [moneroworld.com](https://moneroworld.com/#nodes) علي العديد من الموارد العظيمه لإيجاد خوادم. أسهل هذه الطرق هو إستخدام الخادم المُشغل بواسطه moneroworld بالفعل, لكن لديهم أيضاً أداه لإيجاد خوادم عشوائيه. + +## الإتصال بخادم بعيد في الواجهه الرسوميه +بعد إدخال كلمه السر لمحفظتك سوف تجد رساله تعطيك خيار "إستخدام إعدادات خاصه" قم بالضغط عليها. بعد ذلك سيتم تحويلك إلي صفحه الإعدادات في الواجهه الرسوميه. بعد ذلك سوف تجد صندوقين للنصوص بجوار " عنوان الخادم" . في الصندوق الأول ( علي اليسار ) يجب عليك إدخال عنوان الخادم الذي تود الإتصال به . سيبدو هذا العنوان مثل `node.moneroworld.com` أو ربما يبدو كعنوان IP. وفي الصندوق الصغير علي اليمين يجب عليك إدخال رقم منفذ الإتصال . المنفذ الإفتراضي هو 18081 لكن إذا كنت تستخدم خادم عشوائي ربما يكون المنفذ مختلف . المنفذ الخاص ب node.moneroworld.com هو 18089. +### يجب أن تبدو الواجهه الرسوميه كما في الصوره + diff --git a/_i18n/ar/resources/user-guides/restore_account.md b/_i18n/ar/resources/user-guides/restore_account.md new file mode 100644 index 00000000..dff58877 --- /dev/null +++ b/_i18n/ar/resources/user-guides/restore_account.md @@ -0,0 +1,51 @@ +## نظام التشغيل : ويندوز وليُنكس وماك + +- إستعاده ال25 كلمه (@mnemonic-seed) الذي قمت بحفظهم عند إنشائك محفظه مونيرو القديمه (@wallet) + +### برنامج الحساب : واجهه سطر الأوامر (monero-wallet-cli) + +- افتح موجه الأوامر وانتقل إلى القرص والمجلد الذي يحتوي على واجهه سطر الأوامر (monero-wallet-cli) + +- في موجه الاوامر إكتب : `monero-wallet-cli --restore-deterministic-wallet` + +- بمجرد الضغط على Enter، ستتم مطالبتك باسم ملف محفظة, امنح محفظتك اسمًا جديدًا (أي أسم) + +- اضغط على Enter مرة أخرى وستتم مطالبتك بكلمة مرور. امنح محفظتك كلمة مرور جديدة وطويلة + +- اضغط على Enter مرة أخرى ، وستتم مطالبتك بتكرار كلمة المرور + +- اضغط على Enter مرة أخرى وستتم مطالبتك بال25 كلمة (@mnemonic-seed) التي قمت باستعادتها سابقاً + +- ستتم مطالبتك بعد ذلك بالإستعاده من طول معين من سلسله الكتل (إختياري, الإفتراضي 0), إفتراضياً سيبدأ عمليه الإستعاده من بدايه سلسله كتل مونيرو , إذا لم تكن تعرف طول كتله معين قم بالضغط علي Enter. (إختيار طول كتله معين سيبدأ عمليه الإسترجاع من هذه الكتله و سيقوم ذلك بالتوفير في الوقت اللازم لفحص المعاملات في سلسله الكتل إذا كنت تعرف أول طول بدأت بإستلام الأموال علي الحساب فيه) + +بعد إدخال ال25 كلمه الخاصه بإستعاده حسابك (mnemonic seed) وإختيار طول معين لبدأ الفحص في الكتل ستقوم واجهه سطر أوامر مونيرو بإنشاء نفس العنوان العام ومفتاح الرؤيه الخاص بمحفظتك القديمه وستبدأ المحفظه في التزامن تلقائياً ( من فضلك كن صبوراً هذه العمليه تأخذ بعض الوقت). + +### برنامج الحساب : واجهه المستخدم الرسوميه (monero-wallet-gui) + +إفتح واجهه المستخدم الرسوميه `monero-wallet-gui`. إذا كانت هذه هي المرة الأولى التي تقوم فيها بتشغيلها ، فانتقل إلى الخطوة التالية ، وإلا فاضغط على "إلغاء": + +![cancel opening](png/restore_account/cancel-opening.png) + +قم بإختيار اللغه المناسبه : + +![choose language](png/restore_account/choose-language.png) + +إختر الإسترجاع من كَلِمات التكوين: + +![choose restore](png/restore_account/choose-restore.png) + +إترك خيار `الإسترجاع من كَلِمات التكوين` مُختاراً وإعط لمحفظتك إسماً ومكان للتخزين وقم بوضع ال25 كلمه ( أو 24) الخاصه بإستعاده محفظتك.( إختياري , قم بتحديد طول كتله لبدأ الفحص لتفادي البحث في الكتل القديمه. ثم إضغط علي السهم 'الأيمن': + +![restore wallet](png/restore_account/restore-wallet.png) + +في الصفحة التالية ، امنح محفظتك كلمة مرور قوية وقم بتأكيدها قبل النقر على السهم 'الأيمن': + +![wallet password](png/restore_account/wallet-password.png) + +حدد خيارات الخادم وإضغط علي السهم 'الأيمن': + +![daemon settings](png/restore_account/daemon-settings.png) + +إضغط علي 'إستخدم مونيرو' لإستخدام محفظتك المُستعاده: + +![all set up](png/restore_account/all-set-up.png) diff --git a/_i18n/ar/resources/user-guides/restore_from_keys.md b/_i18n/ar/resources/user-guides/restore_from_keys.md new file mode 100644 index 00000000..8e19504f --- /dev/null +++ b/_i18n/ar/resources/user-guides/restore_from_keys.md @@ -0,0 +1,52 @@ +### الإستعاده من خلال المفاتيح + +إستعاده المحفظه من المفاتيح أمر بسيط للغايه إذا توافرت لديك البيانات اللازمه هذا الدليل سيُساعدك علي إستعاده محفظتك. ملاحظه: كلمه المرور غير ضروريه لإستعاده المحفظه من المفاتيح. + +يجب أن يكون لديك 3 أجزاء من البيانات لإستعاده المحفظه أو ملف .keys الذي يحتوي على هذه المعلومات وكلمة المرور لفك تشفيره. مكونات المحفظة الثلاثة التي تحتاجها هي: + +1. **العنوان** +2. **مفتاح الإنفاق الخاص** +3. **مفتاح الرؤيه الخاص** + + +#### واجهه سطر الأوامر (CLI) + +شغّل المحفظه بهذا الأمر: + +`./monero-wallet-cli --generate-from-keys New_Wallet_Name.abc` + +سيتم سؤالك عن العنوان و مفتاح الإنفاق و مفتاح الرؤيه , وأخيراً تعيين كلمه سر جديده حتي يتم إعاده إنشاء المحفظه. + +تشغيل هذا الأمر سيؤدي إلي إعاده إنشاء محفظتك والسماح لك بتعيين كلمه مرور جديده. + +إذا واجهت أي مشكله تشغيل الأمر `./monero-wallet-cli --help` سيقوم بعرض الخيارات المتاحه أمامك عند بدء تشغيل المحفظه.بمجرد دخولك إلي المحفظه تشغيل الأمر `help` سيقوم بعرض قائمه الأوامر المتاحه لك داخل المحفظه. + +#### الواجهه الرسوميه (GUI) + +شغّل `monero-wallet-gui`. إذا كانت هذه هي المره الأولي التي تقوم فيها بتشغيلها فإذهب إلي الخطوه التاليه, غير ذلك إضغط `إلغاء`: + +![cancel opening](png/restore_from_keys/cancel-opening.png) + +إختر اللغه المناسبه : + +![choose language](png/restore_from_keys/choose-language.png) + +إختر 'إستعاده المحفظه من المفاتيح أو كلمات الإستعاده': + +![choose restore](png/restore_from_keys/choose-restore.png) + +اختر 'إستعاده من المفاتيح', عيّن لمحفظتك إسماً ومكان للتخزين, وأكمل بيانات 'عنوان الحساب (عام)' و 'مفتاح الرؤيه (خاص)' و 'مفتاح الإنفاق (خاص)'. يمكنك إختيارياً تحديد 'طول الإسترجاع' لتفادي فحص الكتل القديمه. وبعد ذلك إضغط السهم جهه 'اليمين': + +![restore wallet](png/restore_from_keys/restore-wallet.png) + +في الصفحه التاليه, عيّن لمحفظتك كلمه سر قويه وقم بتأكيدها قبل ضغط السهم جهه 'اليمين': + +![wallet password](png/restore_from_keys/wallet-password.png) + +حدد إعدادات الخادم وقم بالضغط علي السهم جهه 'اليمين': + +![daemon settings](png/restore_from_keys/daemon-settings.png) + +إنقر علي 'إستخدم مونيرو' للإستمتاع بمحفظتك المُستعاده: + +![all set up](png/restore_from_keys/all-set-up.png) diff --git a/_i18n/ar/resources/user-guides/securely_purchase.md b/_i18n/ar/resources/user-guides/securely_purchase.md new file mode 100644 index 00000000..e3ad257b --- /dev/null +++ b/_i18n/ar/resources/user-guides/securely_purchase.md @@ -0,0 +1,82 @@ +## كيفية شراء مونيرو وتخزينه بأمان. + +هذا دليل لشراء وتخزين مونيرو بشكل آمن اعتبارًا من يونيو 2017. + +#### الخطوه 1: شراء بيتكوين + +هناك العديد من الطرق لشراء البيتكوين. أولاً في البلاد الغربيه هُناك شركتان شبه موثوقتان في هذا الوقت هما Xapo و Coinbase . ستشمل العملية تحميل هويتك الشخصية (هوية الدولة ، جواز السفر ، وما إلى ذلك) وستستغرق من يومين إلى 10 أيام (أو أكثر). تحقق من سمعتهما على موقع Reddit قبل إجراء عملية شراء كبيرة. يستخدم Xapo حوالة مصرفية و Coinbase يستخدم التحويل المصرفي (ACH في الولايات المتحدة الأمريكية). Xapo أسرع من Coinbase. كما يسمح Coinbase للشراء "الفوري" للكميات الصغيره عبر بطاقة الخصم لكنه يضيف رسومًا كبيرة لهذا الخيار. بمجرد شراء بيتكوين ، فأنت على استعداد لتحويله إلى مونيرو! + +أما في الدول العربيه فأفضل خيار هو موقع localbitcoins . والوسطاء المعتمدين علي موقع ترايدنت.(إستخدم هذه المصادر علي مسئوليتك الشخصيه) + +#### الخطوه 2: تحميل وإنشاء محفظه ورقيه علي جهاز كمبيوتر آمن. + +قم بتنزيل مولد المحفظة الورقيه من: https://moneroaddress.org وانسخه إلى USB (الرابط المباشر: https://github.com/moneromooo-monero/monero-wallet-generator/archive/master.zip). + +قم بفك ضغط وفتح مولد المحفظة الورقيه (monero-wallet-generator.html) في مستعرض ويب علي نسخه نظام تشغيل آمنه تم تنزيلها حديثاً. + +ستحتوي محفظتك الورقية على أربعة عناصر مهمة: + +Monero Public Address +يُستخدم العنوان العام لتلقي الأموال إلى المحفظة. أنت تُعطي هذا العنوان لأي شخص ليُرسل الأموال إلى محفظتك. + +Monero Mnemonic Seed +طريقة تخزين المحفظة بطريقه سهله على البشر. هذا هو كل ما تحتاجه لاستعادة محفظتك في وقت لاحق. + +Monero Private Spend Key +يتم استخدام مفتاح الإنفاق الخاص لإرسال الأموال من المحفظة. + +Monero Private View Key +مفتاح العرض الخاص يستخدم لعرض المعاملات التي تدخل إلى المحفظة. عادة ما يتم استخدام هذا المفتاح لإنشاء محفظة رؤيه فقط والتي يمكن أن ترى المعاملات الواردة مباشرة على سلسله الكتل بدون إمكانيه إنفاقها. + +عند هذه النقطة لديك العديد من الخيارات. يمكنك طباعة المحفظة على ورقه او حفظها كملف PDF أو علي USB او حرقها على CD / DVD ، وما إلى ذلك. على الأرجح ستحتاج على الأقل إلى نسختين أو ثلاث مخزنة بشكل آمن في مواقع مختلفة. في حالة التخزين الرقمي ، قم بتشفير كل شيء بكلمة مرور قوية. إذا كنت ستقوم بالتخزين على ورقه ، لا تعرض المحفظة لأي شخص آخر يمكنه حفظ مفتاحك المكون من 25 كلمة ، أو التقاط صورة للمحفظة دون إذنك. إن إرسال شخص ما صورة للمحفظة يعتبر كإعطائه كل أموالك. + +أيًا كانت الطريقة التي اخترتها ، تأكد من عدم وجود نسخة من محفظة مونيرو متبقية على الجهاز الذي استخدمته. قد تحتاج إلى حذف محفظة مونيرو بأمان إذا قمت بحفظها على قرص أو تأكد من عدم قيام الطابعة بحفظ نسخة في الذاكرة. + +* إذا فقدت إمكانية الوصول إلى محفظة مونيرو الورقية ، فلن تتمكن أنت أو أي شخص آخر من إستعادتها. + +#### ملحوظه +خيار لتشفير كلمات الإستعاده الخاصه بك: +https://xmr.llcoins.net/ +قم بتحميل صفحه الـHTML ووضعها علي جهاز عير متصل بالإنترنت. قم بإختيار "Encrypt/Decrypt Mnemonic Seed" وتأكد من إستخدام "CN Add" مع كلمه سر جيّده. + + + +#### خطوه 3: حوّل البتكوين إلي مونيرو وإرسله إلي محفظتك الورقيه + +علي الحاسوب المتصل بالإنترنت لديك انتقل إلى www.shapeshift.io. اختر "Deposit Bitcoin" و "Receive Monero" (سريع). + +إضغط إستمرار. + +Your Monero Address (عنوان مونيرو العام في محفظة مونيرو الورقيه الخاصة بك) +إلصق عنوان مونيرو العام من محفتظ الورقيه في "Your Monero Address". ولكن لأن عنوان مونيرو الخاص بك موجود علي جهاز غير متصل بالإنترنت لا يمكنك النسخ واللصق لذلك قم بنسخه يدويا أو إستخدم USB فارغ وقم بنسخ العنوان من خلاله. + +Refund Address (عنوان البيتكوين الخاص بك) +قم بإدخال عنوان بيتكوين خاص بك حتي يتم رد الأموال إليه في حاله وجود مشكله في المعامله. من المهم جداً إدخال عنوان بيتكوين يمكنك التحكم به وإستقبال الأموال عليه. لاحظ أن في coinbase و xapo يتغير هذا العنوان بشكل دوري. + +Payment ID +أترك حقل هويه المعامله فارغا إذا كنت تُرسل إلي محفظه مونيرو خاصه بك . ( إذا كنت تستخدم منصه تداول يجب إدخال هويه المعامله حتي لا تضيع أموالك) + +وافق علي الشروط وقم بتحديد خيار "Reusable Address". + +إضغط "Start Transaction". + +Deposit Address (عنوان بيتكوين من موقع Shapeshift لإستلام الأموال منك) +قم بنسخ هذا العنوان, ستقوم بإرسال البيتكوين إليه. + +قم بإرسال البيتكوين ويرجي ملاحظه أن تكون الكميه أكبر من اقل كميه وأقل من أكبر كميه محدده من قبل موقع Shapeshift. + +بعد إرسال البتكوين سيكون هُناك تأخير لدقائق أو ساعات إلي أن يتم تأكيد المعامله . يمكنك مُتابعه عنوان الإيداع علي موقع blockchain.info للتاكد من تأكيد المعامله. + +بعد تأكيد معامله البتكوين سيقوم موقع shapeshift بتحويل البتكوين إلي مونيرو علي أحد منصات التداول وحينما يتم التحويل سيقوم بإرسال المونيرو علي عنوانك, ربما يأخذ هذا بضع دقائق أو ساعات إذا حدثت أي مشكله أو تأخير قم بالتواصل مع فريق دعم موقع shapeshift. + +حينما يُظهر موقع shapeshift أن المعامله تمت بنجاح يعني أن المونيرو قد وصل حسابك بالفعل! + + +#### ملاحظات وكيف يمكنك التأكد من المعامله +لأن سلسله كتل مونيرو خاصه ولا يمكن تتبعها لن يمكنك البحث بإستخدام عنوان مونيرو الخاص بك والتأكد من وصول الأموال كما في البتكوين. هذه الخاصيه جيده للخصوصيه لكنها ليست سهله التأكيد كما في البتكوين. + +للتأكد من وصول الأموال لك سيتحتم عليك إنشاء محفظه رؤيه فقط بإستخدام مفتاح الرؤيه الخاص بمحفظتك , لإنشاء محفظه رؤيه أنظر : [View Only Wallets]({{site.baseurl}}/resources/user-guides/view_only.html) + + + + diff --git a/_i18n/ar/resources/user-guides/solo_mine_GUI.md b/_i18n/ar/resources/user-guides/solo_mine_GUI.md new file mode 100644 index 00000000..598b120e --- /dev/null +++ b/_i18n/ar/resources/user-guides/solo_mine_GUI.md @@ -0,0 +1,15 @@ +من السهل جداً التعدين منفرداً بإستخدام الواجهه الرسوميه. إذا لم تقم بتنزيل الواجهه الرسوميه بعد توجه إلي صفحه تنزيلات مونيرو وقم بتنزيل الواجهه الرسوميه الخاصه بنظام تشغيلك. بعد ذلك قم بتشغيلها وكُن صبوراً خلال قيام مونيرو بالتزامن مع الشبكه. يجب أن تري كلمه " مُتصل " في أسفل اليسار . + + + +إضغط علي خيار "مُتقدم" يجب أن تري العديد من الخيارات الفرعيه الأخري . الأن إضغط منها علي خيار "التعدين". + + + +لديك الآن خيار لبدء التعدين يمكنك اختياريا تغيير عدد وحدات المعالجه المركزيه. لتحقيق الكفاءة المثلى ، يجب تحديد نصف عدد وحده المعالجه المركزيه الخاصه بك . ستحتاج للبحث عن مواصفات وحدة المعالجة المركزية الخاصة بك على موقع الشركة المصنعة. إذا كنت غير متأكد ، فاترك العدد 1. انقر فوق الزر "بدء التعدين". + + + +أنت الآن تُعدِن بالشبكة كما ترى في الصوره بالأسفل في هذا المثال يساهم الكمبيوتر بـ 23 H/s بشبكه مونيرو . يساعد التعدين في الحفاظ على أمان الشبكة وقد يحالفك الحظ وتحصل على مكافأة لحماية الشبكة. + +لوقف التعدين ، ببساطة انقر فوق الزر "إيقاف التعدين". diff --git a/_i18n/ar/resources/user-guides/verification-allos-advanced.md b/_i18n/ar/resources/user-guides/verification-allos-advanced.md new file mode 100644 index 00000000..88ca4462 --- /dev/null +++ b/_i18n/ar/resources/user-guides/verification-allos-advanced.md @@ -0,0 +1,183 @@ +# التأكد من ملفات التثبيت : ليُنكس وماك وويندوز بإستخدام واجهه سطر الأوامر (مُتطور) + +التأكد من صحه ملفات التثبيت يجب أن يكون قبل فك الضغط أو التثبيت أو إستخدام البرامج. هذه هي الطريقه الوحيده للتأكد من حصولك علي البرامج الرسميه. إذا حصلت علي ملفات تثبيت مزيفه ( مثال هجمات التصيد و إختراق الإتصال وخلافه) بمتابعه هذا لدليل سوف تحمي نفسك من الوقوع ضحيه لهذه الملفات. + +لحماية تكامل الثنائيات ، يوفر فريق مونيرو قائمة موقعة مشفرة لكل الملفات [SHA256] (https://en.wikipedia.org/wiki/SHA-2). إذا تم العبث بالملف الذي تم تنزيله ، فسيتم إنتاجه [هاش مختلف] (https://en.wikipedia.org/wiki/File_verification) عن الموجود في الملف. + +هذا دليل متقدم يستخدم سطر الأوامر لنُظم تشغيل لينُكس وويندوز وماك سيوجهك خلال عملية تثبيت البرامج المطلوبه واستيراد مفتاح التوقيع وتنزيل الملفات الضرورية وأخيرًا التحقق من صحة ملفات التثبيت. + +## قائمه المحتوي: + +### [1. تثبيت GnuPG](#1-installing-gnupg) +### [2. تأكيد & إستيراد ملف مفتاح التوقيع](#2-verify-and-import-signing-key) + + [2.1. إحصل علي مفتاح التوقيع ](#21-get-signing-key) + + [2.2. تأكد من مفتاح التوقيع ](#22-verify-signing-key) + + [2.3. إستيراد مفتاح التوقيع ](#23-import-signing-key) +### [3. تنزيل & تأكد من ملف الهاش](#3-download-and-verify-hash-file) + + [3.1. إحصل علي ملف الهاش ](#31-get-hash-file) + + [3.2. تأكد من ملف الهاش ](#32-verify-hash-file) +### [4. تحميل & تأكد من ملفات التسطيب ](#4-download-and-verify-binary) + + [4.1. الحصول علي ملفات التسطيب](#41-get-monero-binary) + + [4.2. تأكد من الملفات علي ليُنكس اوماك ](#42-binary-verification-on-linux-or-mac) + + [4.3. تأكد من الملفات علي ويندوز](#43-binary-verification-on-windows) + +## 1. تثبيت GnuPG + ++ في ويندوز انتقل إلى صفحة التنزيل [Gpg4win] (https://gpg4win.org/download.html) واتبع الإرشادات الخاصة بالتثبيت. + ++ في ماك انتقل إلى صفحة تنزيل [Gpgtools] (https://gpgtools.org/) واتبع الإرشادات الخاصة بالتثبيت. + ++ في ليُنكس ، GnuPG مُثبّت افتراضيًا. + +## 2. تأكيد & إستيراد ملف مفتاح التوقيع + +سيغطي هذا القسم الحصول على مفتاح توقيع مونيرو والتأكد من صحته واستيراد المفتاح إلى GnuPG. + +### 2.1. إحصل علي مفتاح التوقيع + +علي ويندوز أو ماك إذهب إلي [Fluffypony's GPG key](https://raw.githubusercontent.com/monero-project/monero/master/utils/gpg_keys/fluffypony.asc) لتحميل المُفتاح المُستخدم في توقيع الملفات وقم بحفظه بإسم `fluffypony.asc` في مجلدك الرئيسي. + +في ليُنكس يمكنك تحميل ملف مفتاح التوقيع من خلال الأمر التالي : + +``` +wget -O fluffypony.asc https://raw.githubusercontent.com/monero-project/monero/master/utils/gpg_keys/fluffypony.asc +``` + +### 2.2. تأكد من مفتاح التوقيع + +في جميع أنظمة التشغيل ، تحقق من بصمة `fluffypony.asc` بإصدار الأمر التالي في سطر الأوامر : + +``` +gpg --keyid-format long --with-fingerprint fluffypony.asc +``` + + +تحقق من تطابق البصمه بالتالي : + +``` +pub 2048R/7455C5E3C0CDCEB9 2013-04-08 Riccardo Spagni + Key fingerprint = BDA6 BD70 42B7 21C4 67A9 759D 7455 C5E3 C0CD CEB9 +sub 2048R/55432DF31CCD4FCD 2013-04-08 +``` + +إذا كانت البصمه **صحيحه** يمكنك المُتابعه. + +إذا كانت البصمه ** غير متطابقه ** **لا تُكمل** بل قم بحذف ملف `fluffypony.asc` وإذهب إلي [فصل 2.1](#21-get-signing-key). + +### 2.3. إستيراد مفتاح التوقيع + +من سطر الأوامر ، قم باستيراد مفتاح التوقيع: + +``` +gpg --import fluffypony.asc +``` + +إذا كانت هذه هي المرة الأولى التي تستورد فيها المفتاح ، فسيبدو الناتج كما يلي: + +``` +gpg: key 0x7455C5E3C0CDCEB9: 2 signatures not checked due to missing keys +gpg: key 0x7455C5E3C0CDCEB9: public key "Riccardo Spagni " importe +d +gpg: Total number processed: 1 +gpg: imported: 1 +gpg: no ultimately trusted keys found +``` + +إذا قمت باستيراد المفتاح مسبقًا ، فسيبدو الناتج كما يلي: + +``` +gpg: key 0x7455C5E3C0CDCEB9: "Riccardo Spagni " not changed +gpg: Total number processed: 1 +gpg: unchanged: 1 +``` + +## 3. تنزيل & تأكد من ملف الهاش + +سيغطي هذا القسم تنزيل ملف الهاش والتحقق من صحته. + +### 3.1. إحصل علي ملف الهاش + +على نظام ويندوز أو ماك انتقل إلى [ملف الهاشات على getmonero.org] (https://getmonero.org/downloads/hashes.txt) واحفظ الصفحة كـ `hashes.txt` إلى مجلدك الرئيسي. + +في ليُنكس يمكنك تنزيل ملف الهاشات الموقّع عن طريق إصدار الأمر التالي: + +``` +wget -O hashes.txt https://getmonero.org/downloads/hashes.txt +``` + +### 3.2. تأكد من ملف الهاش + +ملف الهاش موقع بمفتاح `94B7 38DD 3501 32F5 ACBE EA1D 5543 2DF3 1CCD 4FCD`, الذي هو مفتاح فرعي من المفتاح `BDA6 BD70 42B7 21C4 67A9 759D 7455 C5E3 C0CD CEB9` (كما هو موضح في الناتج أدناه). + +في جميع أنظمة التشغيل ، تحقق من توقيع ملف التجزئة عن طريق إصدار الأمر التالي في سطر الأوامر: + +``` +gpg --verify hashes.txt +``` + +إذا كان الملف صحيح ، سيبدو الناتج كما يلي: + +``` +gpg: Signature made Thu 05 Apr 2018 06:07:35 AM MDT +gpg: using RSA key 94B738DD350132F5ACBEEA1D55432DF31CCD4FCD +gpg: Good signature from "Riccardo Spagni " [unknown] +gpg: WARNING: This key is not certified with a trusted signature! +gpg: There is no indication that the signature belongs to the owner. +Primary key fingerprint: BDA6 BD70 42B7 21C4 67A9 759D 7455 C5E3 C0CD CEB9 + Subkey fingerprint: 94B7 38DD 3501 32F5 ACBE EA1D 5543 2DF3 1CCD 4FCD +``` + +إذا كان الناتج يُظهر ** Good signature ** كما هو موضح في المثال فيمكنك المتابعة. + +إذا كان الناتج **BAD signature** **لا تُكمل** بل قم بحذف ملف `hashes.txt` وإرجع إلي [القسم 3.1](#31-get-hash-file). + +## 4. تحميل & تأكد من ملفات التسطيب + +سيغطي هذا القسم تنزيل برنامج مونيرو لنظام التشغيل الخاص بك ، والحصول على هاش `SHA256` من التنزيل الخاص بك ، والتحقق من صحته. + +### 4.1. الحصول علي ملفات التسطيب + +علي ويندوز أو ماك توجه إلي [getmonero.org](https://getmonero.org/downloads/) وقم بتنزيل الملف الخاص بنظام التشغيل الخاص بك. قم بحفظ الملف لمجلدك الرئيسي. **لا تقم بفك الضغط ** + +في Linux ، يمكنك تنزيل واجهه سطر الأوامر عن طريق إصدار الأمر التالي: + +``` +wget -O monero-linux-x64-v0.12.0.0.tar.bz2 https://downloads.getmonero.org/cli/linux64 +``` + +### 4.2. تأكد من الملفات علي ليُنكس اوماك + +هذه الخطوات لنظامي تشغيل لينُكس وماك. من سطر الأوامر إحصل علي هاش `SHA256` لملف التثبيت. كمثال سيستخدم هذا الدليل واجهه المستخدم الرسوميه علي ليُنكس , إستبدل `monero-gui-linux-x64-v0.12.0.0.tar.bz2` بإسم ملف التثبيت الذي قمت بتنزيله في [الفصل 4.1](#41-get-monero-binary). + +``` +shasum -a 256 monero-gui-linux-x64-v0.12.0.0.tar.bz2 +``` + +سيبدو الناتج كهذا ، ولكن سيكون مختلفًا لكل ملف. يجب أن يتطابق هاش `SHA256` الخاصة بك مع الهاش في القائمة المدرجة في ملف` hashes.txt` لملف التثبيت. + +``` +fb0f43387b31202f381c918660d9bc32a3d28a4733d391b1625a0e15737c5388 monero-gui-linux-x64-v0.12.0.0.tar.bz2 +``` + +إذا كان الهاش **مُتطابق** يمكنك الأن فك الضفط والتثبيت. + +إذا كان الهاش **غير مُتطابق** , ** لا تُكمل ** بل إحذف ملف التثبيت وإرجع إلي [القسم 4.1](#41-get-monero-binary). + +### 4.3. تأكد من الملفات علي ويندوز + +من سطر الأوامر احصل على هاش `SHA256` من ملف التثبيت الذي تم تنزيله. على سبيل المثال ، سيستخدم هذا الدليل ثنائي واجهة المستخدم الرسومية لنظام ويندوز ، 64 بت. استبدل `monero-gui-win-x64-v0.12.0.0.zip` باسم الملف الذي قمت بتنزيله في [القسم 4.1](#41-get-monero-binary). + +``` +certUtil -hashfile monero-gui-win-x64-v0.12.0.0.zip SHA256 +``` +سيبدو الناتج كهذا ، ولكن سيكون مختلفًا لكل ملف. يجب أن يتطابق هاش `SHA256` الخاصة بك مع الهاش في القائمة المدرجة في ملف` hashes.txt` لملف التثبيت. + +``` +SHA256 hash of file monero-gui-win-x64-v0.12.0.0.zip: +4b 9f 31 68 6e ca ad 97 cd b1 75 e6 57 4b f3 07 f8 d1 c4 10 42 78 25 f4 30 4c 21 da 8a ac 18 64 +CertUtil: -hashfile command completed successfully. +``` + +إذا كان الهاش **مُتطابق** يمكنك الأن فك الضفط والتثبيت. + +إذا كان الهاش **غير مُتطابق** , ** لا تُكمل ** بل إحذف ملف التثبيت وإرجع إلي [القسم 4.1](#41-get-monero-binary). diff --git a/_i18n/ar/resources/user-guides/verification-windows-beginner.md b/_i18n/ar/resources/user-guides/verification-windows-beginner.md new file mode 100644 index 00000000..9e9b4c60 --- /dev/null +++ b/_i18n/ar/resources/user-guides/verification-windows-beginner.md @@ -0,0 +1,254 @@ +# تأكد من ملفات التسطيب علي ويندوز (للمُبتدئين) + +التأكد من صحه ملفات التثبيت يجب أن يكون قبل فك الضغط أو التثبيت أو إستخدام البرامج. هذه هي الطريقه الوحيده للتأكد من حصولك علي البرامج الرسميه. إذا حصلت علي ملفات تثبيت مزيفه ( مثال هجمات التصيد و إختراق الإتصال وخلافه) بمتابعه هذا لدليل سوف تحمي نفسك من الوقوع ضحيه لهذه الملفات. + +لحماية تكامل الثنائيات ، يوفر فريق مونيرو قائمة موقعة مشفرة لكل الملفات [SHA256] (https://en.wikipedia.org/wiki/SHA-2). إذا تم العبث بالملف الذي تم تنزيله ، فسيتم إنتاجه [هاش مختلف] (https://en.wikipedia.org/wiki/File_verification) عن الموجود في الملف. + + +هذا هو دليل المبتدئين لنظام التشغيل ويندوز وسوف يستخدم واجهه المستخدم الرسوميه بشكل حصري. وسيوجهك خلال عملية تثبيت البرنامج المطلوب واستيراد مفتاح التوقيع وتنزيل الملفات الضرورية وأخيرًا التحقق من صحة ملف التثبيت. + +## قائمه المحتويات + +### [1. Gpg4win مُثبِت](#1-using-gpg4win-installer) + - [1.1. الحصول علي مُثبت Gpg4win ](#11-getting-gpg4win-installer) + + [1.1.1. تنزيل Gpg4win](#111-download-gpg4win) + + [1.1.2. تشغيل Gpg4win](#112-launch-gpg4win) + - [1.2. إستخدام مُثبت Gpg4win](#12-use-gpg4win-installer) +### [2. إستيراد مفتاح التوقيع ](#2-monero-signing-key) + - [2.1. تنزيل مفتاح التوقيع ](#21-download-signing-key) + - [2.2. تهيئة Kleopatra](#22-initialize-kleopatra) + + [2.2.1. إستيراد مفتاح التوقيع](#221-import-signing-key) + + [2.2.2. إنشاء زوج مفتاح](#222-create-key-pair) + - [2.3. تحقق من مفتاح التوقيع](#23-verify-signing-key) +### [3. تحقق من ملف الهاش](#3-hash-file-verification) + - [3.1. تحميل ملف الهاش ](#31-download-hash-file) + - [3.2. تحقق من ملف الهاش](#32-verify-hash-file) +### [4. التحقق من ملف التثبيت](#4-binary-file-verification) + - [4.1. تحميل ملف التثبيت](#41-download-binary) + - [4.2. التحقق من ملف التثبيت](#42-verify-binary) + +## 1. إستخدام مُثبت Gpg4win + +سيغطي هذا القسم تثبيت برنامج التشفير. لا يأتي مع ويندوز الأدوات المطلوبة للتحقق من الملفات. لتثبيت هذه الأدوات يمكنك استخدام مثبت Gpg4win. + +### 1.1. الحصول علي مُثبت Gpg4win + +#### 1.1.1. تنزيل Gpg4win + +في المتصفح إذهب إلي [gpg4win.org](https://gpg4win.org) وقم بتنزيل المُثبت بالضغط علي الزر الأخضر. + +![gpg4win download button](png/verify_binary_windows_beginner/verify-win_gpg4win-site-downloadbutton.png) + +سيتم نقلك إلى صفحة التبرع إذا كنت لا ترغب في التبرع فحدد `$ 0` ثم ستتمكن من النقر فوق `download`. + +![gpg4win site donation](png/verify_binary_windows_beginner/verify-win_gpg4win-site-donation.png) + +إضغط `Save File`. + +![gpg4win site save file](png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile.png) + +إختار مكان التنزيل ثم إضغط `Save`. + +![gpg4win site download location](png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile-location.png) + +#### 1.1.2. تشغيل Gpg4win + +عند انتهاء التنزيل ، افتح المجلد المُحدد. + +![gpg4win site open folder](png/verify_binary_windows_beginner/verify-win_gpg4win-site-savefile-openfolder.png) + +انقر نقرًا مزدوجًا على ملف gpg4win الذي تم تنزيله للتشغيل. + +![gpg4win launch](png/verify_binary_windows_beginner/verify-win_gpg4win-launch.png) + +### 1.2. إستخدام مُثبت Gpg4win + +سيتم عرض شاشة التحقق الأمني ، انقر فوق "Run". + +![gpg4win installer security](png/verify_binary_windows_beginner/verify-win_gpg4win-install-security.png) + +إختار اللغه ثم إضغط `OK`. + +![gpg4win installer language](png/verify_binary_windows_beginner/verify-win_gpg4win-install-language.png) + +ستظهر شاشة الترحيب ، انقر فوق `Next`. + +![gpg4win installer welcome](png/verify_binary_windows_beginner/verify-win_gpg4win-install-welcome.png) + +الآن سترى شاشة اختيار المُكونات ، يجب عليك على الأقل إختيار `Kleopatra` لهذا الدليل. قم بعمل اختياراتك ، انقر فوق `Next`. + +![gpg4win installer components](png/verify_binary_windows_beginner/verify-win_gpg4win-components.png) + +من الأفضل ترك موقع التثبيت الافتراضي ، انقر فوق `Install`. + +![gpg4win installer location](png/verify_binary_windows_beginner/verify-win_gpg4win-install.png) + +اكتمل التثبيت, انقر علي `Next`. + +![gpg4win installer complete](png/verify_binary_windows_beginner/verify-win_gpg4win-install-complete.png) + +أنقر علي `Finish`. + +![gpg4win installer finish](png/verify_binary_windows_beginner/verify-win_gpg4win-install-finish.png) + +## 2. مُفتاح توقيع مونيرو + +سيٌغطي هذا القسم تنزيل مفتاح توقيع مونيرو والتأكد من أن المفتاح صحيح و إستيراد المفتاح إلي برنامج التوقيع الخاص بك. ملف الهاش الذي يُستخدم للتحقق من ملفات التثبيت يتم توقيعه بواسطه مفتاح توقيع مونيرو. حتي تتمكن من التحقق من الملفات يجب الحصول علي مفتاح التوقيع. + +### 2.1. تنزيل مفتاح التوقيع + +في متصفح الويب إذهب إلي [Fluffypony's GPG key](https://raw.githubusercontent.com/monero-project/monero/master/utils/gpg_keys/fluffypony.asc) لتنزيل المفتاح المُستخدم في توقيع ملفات تثبيت مونيرو. ثم قم بحفظ الصفحه عن طريق النقر بزر الفاره الأيمن وإختيار `Save Page As`. + +![getkey right click](png/verify_binary_windows_beginner/verify-win_getkey-rightclick.png) + +أترك المكان الإفتراضي وإنقر `Save`. + +![getkey save file](png/verify_binary_windows_beginner/verify-win_getkey-savefilename.png) + +### 2.2. تهيئه Kleopatra + +إذا كانت هذه هي المرة الأولى التي تستخدم فيها Kleopatra ، فسيتعين عليك إنشاء زوج مفاتيح لنفسك. + +تشغيل Kleopatra. + +![kleo launch](png/verify_binary_windows_beginner/verify-win_kleopatra-launch.png) + +#### 2.2.1. استيراد مفتاح التوقيع + +أنقر `Import`. + +![kleo firstrun import](png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-importkey.png) + +إدخل مجلد `Downloads` وإختر `fluffypony` وإضغط `Open`. + +![kleo firstrun key location](png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-import-location.png) + +ابدأ عملية اعتماد المفتاح من خلال النقر `Yes`. + +![kleo firstrun start process](png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-startverifyprocess.png) + +#### 2.2.2. إنشاء زوج مفتاح + +ابدأ عملية إنشاء المفتاح بالنقر فوق `Yes`. + +![kleo firstrun start key create](png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeysnow.png) + +املأ بعض التفاصيل لـ `Name` و `Email`, وانقر `Next`. + +![kleo firstrun key details](png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeydetails.png) + +تحقق من التفاصيل ، انقر فوق `Create`. + +![kleo firstrun verify key details](png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-verifykeydetails.png) + +تعيين كلمة مرور ، انقر فوق `OK`. + +![kleo firstrun set key pass](png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-createkeys-pinentry.png) + +إنقر `Finish`. + +![kleo firstrun finish create key](png/verify_binary_windows_beginner/verify-win_kleopatra-firstrun-keycreate-success.png) + +### 2.3. تحقق من مفتاح التوقيع + +تحقق بصريا أن بصمة المفتاح الذي ينتمي إلى ريكاردو هو `BDA6BD7042B721C467A9759D7455C5E3C0CDCEB9`. + +![kleo certify fingerprint](png/verify_binary_windows_beginner/verify-win_kleopatra-certify-fingerprint.png) + +إذا كانت البصمه **مُتطابقه** إضغط 'Next'. + +إذا كانت البصمه **غير مُتطابقه** **لا تُكمل** بل إحذف الملف `fluffypony` من مجلد `Downloads`وعُد إلي [القسم 2.1](#21-download-signing-key). + +إترك `Certify only for myself` مُختاره وإنقر `Certify`. + +![kleo certify for self](png/verify_binary_windows_beginner/verify-win_kleopatra-certify-forself.png) + +أدخل كلمة المرور الخاصة بك وإنقر `OK`. + +![kleo certify pass](png/verify_binary_windows_beginner/verify-win_kleopatra-certify-pinentry.png) + +إنقر `Finish`. + +![kleo certify finish](png/verify_binary_windows_beginner/verify-win_kleopatra-certify-finish.png) + +## 3. التحقق من ملف الهاش + +سيغطي هذا القسم تنزيل الملف الموقّع للهاشات المعروفة والتحقق من صحته. + +### 3.1. تنزيل ملف الهاش + +في متصفح الويب ، انتقل إلى [صفحة الهاش getmonero.org] (https://getmonero.org/downloads/hashes.txt). انقر بزر الماوس الأيمن على الصفحة ، وحدد `Save Page As`. + +![hashes right click](png/verify_binary_windows_beginner/verify-win_hashes-getmonero-rightclick.png) + +اترك الموقع الافتراضي ، انقر فوق `Save`. + +![hashes save file](png/verify_binary_windows_beginner/verify-win_hashes-getmonero-savename.png) + +### 3.2. تأكد من ملف الهاش + +في Kleopatra إنقر علي زر `Decrypt/Verify`. + +![hashes kleo verify button](png/verify_binary_windows_beginner/verify-win_hashes-kleo-verify-button.png) + +إذهب إلي مجلد 'Downloads' وإختار ملف 'hashes' وإنقر 'open'. + +![hashes kleo open file](png/verify_binary_windows_beginner/verify-win_hashes-kleo-verify-button-filename.png) + +سوف يعلمك Kleopatra إذا كان توقيع الملفات صالحًا. + +إذا كان التوقيع ** صحيح ** سترى هذا: + +![hashes kleo goodsig](png/verify_binary_windows_beginner/verify-win_hashes-kleo-goodsig.png) + +إذا كان التوقيع ** غير صحيح ** سترى هذا: + +![hashes kleo badsig](png/verify_binary_windows_beginner/verify-win_hashes-kleo-badsig.png) + +إذا كان التوقيع **صحيح** إنقر علي `Discard` ثم إنتقل. + +إذا كان التوقيع **غير صحيح** , **لا تُكمل** وإحذف ملف hashes` من مجلد `Downloads` وعد إلي [القسم 3.1](#31-download-hash-file). + +## 4. التحقق من ملفات التثبيت + +سيغطي هذا القسم تنزيل ملف تثبيت مونيرو والتحقق من صحته. + +### 4.1. تنزيل ملف التثبيت + +في المتصفح إذهب إلي [getmonero.org فصحه التنزيلات ](https://getmonero.org/downloads/#windows), وإختر الملف المناسب لنظام تشغيلك. + +![binary getmonero](png/verify_binary_windows_beginner/verify-win_binary-getmonero-windowsfiles.png) + +إترك `Save File` مُختاره وإنقر `OK`. + +![binary getmonero save](png/verify_binary_windows_beginner/verify-win_binary-getmonero-save-file.png) + +اترك الموقع الافتراضي ، انقر فوق `Save`. + +![binary getmonero save location](png/verify_binary_windows_beginner/verify-win_binary-getmonero-save-location.png) + +### 4.2. تأكد من ملف التثبيت + +في مدير الملفات انتقل إلى دليل "Downloads" وافتح ملف `hashes` باستخدام معالج النصوص. + +![binary open hashes.txt](png/verify_binary_windows_beginner/verify-win_binary-word-hashfile.png) + +إفتح سطر الأوامر (`cmd.exe`). + +![binary launch term](png/verify_binary_windows_beginner/verify-win_binary-cmd-launch.png) + +إذهب إلي مجلد 'Downloads' بإستخدام أمر : `cd Downloads`. + +![binary cmd cd](png/verify_binary_windows_beginner/verify-win_binary-cmd-cd.png) + +إحسب الهاش الخاص بملف تثبيت مونيرو بالأمر التالي : `certUtil -hashfile monero-gui-win-x64-v0.11.1.0.zip SHA256` ( إذا قمت بتنزيل واجهه سطر الأوامر قم بتبديل `monero-gui-win-x64-v0.11.1.0.zip` وفقاً لذلك) + +![binary cmd certutil](png/verify_binary_windows_beginner/verify-win_binary-cmd-certutil.png) + +قارن الهاش من سطر الأوامر بالهاش في الملف . يجب أن يكونوا متطابقين (يُمكن تجاهل المسافات). + +![binary compare hashes](png/verify_binary_windows_beginner/verify-win_binary-word-cmd-compare.png) + +إذا كان الهاش **متطابق** تكون قد إنتهيت من التحقق! يُمكنك التأكد أن ملفات التثبيت لديك أصليه, يمكنك الأن فك الضغط والبدأ في التثبيت وإستخدام الملفات بشكل طبيعي. + +إذا كان الهاش **غير متطابق** **لا تُكمل** قم بمسح ملف التثبيت من مجلد 'Downloads' وإرجع إلي [القسم 4.1](#41-download-binary). diff --git a/_i18n/ar/resources/user-guides/view_only.md b/_i18n/ar/resources/user-guides/view_only.md new file mode 100644 index 00000000..c17fef1d --- /dev/null +++ b/_i18n/ar/resources/user-guides/view_only.md @@ -0,0 +1,32 @@ +محفظه الرؤيه فقط يمكنها رؤيه المعاملات الوارده إلي المحفظه ولا يمكنها القيام بإنفاق الأموال, في الواقع لا يُمكنها حتي رؤيه المعاملات الصادره من هذه المحفظه. وهذا يجعلها مثيره للإهتمام لكل من + +* المُطورين القائمين بكتابه مكتبات للتحقق من المدفوعات +* المستخدم النهائي الذي يريد التحقق من المدفوعات إلي محفظه مجمده + +### إنشاء محفظه رؤيه فقط + +يُمكنك إنشاء محفظه رؤيه فقط من أي محفظه موجوده. + +#### واجهه سطر الأوامر + +إفتح محفظه موجوده بالفعل أو إنشيء واحده جديده بإستخدام واجهه سطر الأوامر `monero-wallet-cli`. في المحفظه قم بكتابه `address` و `viewkey` لعرض عنوان المحفظه ومفتاح الرؤيه السري. إكتب `exit` لإغلاق المحفظه. + +بعد ذلك إنشيء محفظه رؤيه فقط بكتابه `monero-wallet-cli --generate-from-view-key wallet-name`. قم بتبديل wallet-name بإسم المحفظه الذي تريده. بعدها سيتم سؤاك عن عنوان المحفظه ومفتاح الرؤيه السري قم بلصق البيانات اللازمه التي حفظتها سابقاً. بعد ذلك سيتم سؤالك لتعيين كلمه سر جديده وتأكيدها ومبروك تم إنشاء محفظه الرؤيه بنجاح. + +#### GUI + +إفتح محفظه موجوده بالفعل أو أنشيء محفظه جديده بإستخدام واجهه المستخدم الرسوميه `monero-wallet-gui`. وإذهب إلي صفحه الإعدادات. + +![settings](png/view-only/settings.png) + +إختار 'إنشاء محفظه رؤيه فقط' وعيّن إسماً للمحفظه وإختار مكان حفظها ثم إضغط علي السهم 'الأيمن': + +![create-view-only](png/view-only/create-view-only.png) + +عيّن كلمه سر قويه لمحفظه الرؤيه وقم بتأكيدها قبل النقر علي 'إنشاء المحفظه': + +![wallet-password](png/view-only/wallet-password.png) + +يُمكنك إختيارياً النقر علي كلمه 'نجح' لنسخ الرساله , وبعد ذلك إنقر علي 'تم' لإغلاقها: + +![Success](png/view-only/Success.png) diff --git a/_i18n/ar/resources/user-guides/vps_run_node.md b/_i18n/ar/resources/user-guides/vps_run_node.md new file mode 100644 index 00000000..ff854f36 --- /dev/null +++ b/_i18n/ar/resources/user-guides/vps_run_node.md @@ -0,0 +1,47 @@ +# monerod + +`monerod` هو برنامج خادم مونيرو. وهو برنامج وحده تحكم في سلسله الكتل. بينما تُدير محفظه البيتكوين كلاً من الحساب وسلسله الكتل, يقوم مونيرو بفصلهم, فالخادم `monerod` يتحكم في سلسله الكتل وواجهه سطر الأوامر `monero-wallet-cli` تتحكم في الحساب. + +يفترض هذا الدليل أنك قمت بإنشاء الخادم الإفتراضي (VPS) الخاص بك بالفعل وتستخدم (SSH) للإتصال بوحده تحكم الخادم. + +## Linux, 64-bit (Ubuntu 16.04 LTS) + +### تأكد من أن المنفذ 18080 مفتوح. +يستخدم هذا لمنفذ للتواصل مع الخوادم الأخري بشبكه مونيرو. + +Example if using `ufw`: `sudo ufw allow 18080` +Example if using `iptables`: `sudo iptables -A INPUT -p tcp --dport 18080 -j ACCEPT` + +### قم بتحميل ملفات تسطيب مونيرو. + + wget https://downloads.getmonero.org/linux64 + +### قم بإنشاء مجلد جديد وفك ضغط الملف. + + mkdir monero + tar -xjvf linux64 -C monero + +### شَغِل الخادم. + + cd monero + ./monerod + +### الخيارات: + +أعرض قائمه بكل الخيارات والإعدادات: + + ./monerod --help + +شَغِل الخادم بالخلفيه: + + ./monerod --detach + +تابع مُخرجات الخادم `monerod`: + + tail -f ~/.bitmonero/bitmonero.log + +حافظ علي أمان الخادم بتشغيل التحديثات التلقائيه: + +https://help.ubuntu.com/community/AutomaticSecurityUpdates + + diff --git a/_i18n/ar/technical-specs.md b/_i18n/ar/technical-specs.md new file mode 100644 index 00000000..3241d3bb --- /dev/null +++ b/_i18n/ar/technical-specs.md @@ -0,0 +1,133 @@ +
+ +
+
+ +
+
+ +
+
+

دون تعدين مُسبق أو تعدين لحظي أو عمله رمزيه

+
+
+ +
+* لم يكن لمونيرو تعدين مُسبق أو لحظي +* لم يبيع مونيرو اي عمله رمزيه +* لم يكن لمونيرو بيع مُسبق بأي شكل +
+ +
+
+

تأكيد-العمل

+
+
+ +
+* كريبتونايت (CryptoNight) +* رُبما تتغير في المُستقبل +
+ +
+
+

إعاده توجيه الصعوبه

+
+
+ +
+* في كل كتله +* إستناداً إلي آخر 720 كتله, بإستثناء 20% من القيم الطوليه +
+ +
+
+

وقت الكتله

+
+
+ +
+* دقيقتان +* ربما يتغير في المستقبل طالما أن منحني الإصدار محفوظ +
+ +
+
+

جائزه الكتله

+
+
+ +
+* تنخفض بسلاسه وإنشاء كتل أكبر من متوسط حجم آخر 100 كتله يخضع لغرامات (M100) +* أُنظر [آخر كتله](https://moneroblocks.info/) قيمه معامله الأساس للمكافئه الحاليه +
+ +
+
+

حجم الكتله

+
+
+ +
+* متغير, أقصي حد ناتج 2 * M100 +
+ +
+
+

منحني الإصدار

+
+
+ +
+* أولاً, المنحني الرئيسي: حوالي 18.132 مليون عمله بنهايه مايو 2022 +* ثم منحني الذيل: 0.6 مونيرو كل دقيقتين, يتم إصدارهم فور إنتهاء المنحني الرئيسي, وتُترجم إلي أقل من 1% نسبه تضخم تَقِل مع الوقت +* see [charts and details](https://www.reddit.com/r/Monero/comments/512kwh/useful_for_learning_about_monero_coin_emission/) +
+ +
+
+

الحد الأقصي للإِصدار

+
+
+ +
+* لانهائي +
+ +
+
+

خصوصيه الراسل

+
+
+ +
+* توقيعات-الطوق +
+ +
+
+

خصوصيه المُستَلِم

+
+
+ +
+* العناوين المخفيه +
+ +
+
+

تعتيم الكميه

+
+
+ +
+* معاملات الطوق السريه +
+ +
+
+ +
+ +
+
diff --git a/_i18n/en.yml b/_i18n/en.yml index 52375bc8..d09560f9 100644 --- a/_i18n/en.yml +++ b/_i18n/en.yml @@ -4,6 +4,7 @@ langs: it: Italiano pl: Polski fr: Français + ar: العربية global: date: '%Y/%m/%d' diff --git a/_i18n/es.yml b/_i18n/es.yml index 5598764b..3342ccac 100644 --- a/_i18n/es.yml +++ b/_i18n/es.yml @@ -4,6 +4,7 @@ langs: it: Italiano pl: Polski fr: Français + ar: العربية global: date: '%Y/%m/%d' diff --git a/_i18n/fr.yml b/_i18n/fr.yml index ff83621a..aa5fc27b 100644 --- a/_i18n/fr.yml +++ b/_i18n/fr.yml @@ -4,6 +4,7 @@ langs: it: Italiano pl: Polski fr: Français + ar: العربية global: date: '%d/%m/%Y' diff --git a/_i18n/it.yml b/_i18n/it.yml index d5626f9d..aa6f23c4 100644 --- a/_i18n/it.yml +++ b/_i18n/it.yml @@ -4,6 +4,7 @@ langs: it: Italiano pl: Polski fr: Français + ar: العربية global: date: '%Y/%m/%d' diff --git a/_i18n/pl.yml b/_i18n/pl.yml index c54b6d49..5436b81e 100644 --- a/_i18n/pl.yml +++ b/_i18n/pl.yml @@ -4,6 +4,7 @@ langs: it: Italian pl: Polski fr: Français + ar: العربية global: date: '%Y/%m/%d'