Forwarded from DevOps Labdon
🔵 عنوان مقاله
Managing OpenAI API keys with HashiCorp Vault's dynamic secrets plugin (4 minute read)
🟢 خلاصه مقاله:
مقالهای که مورد بررسی قرار گرفت، به توسعه یک پلاگین جدید برای HashiCorp Vault پرداخته است که هدف آن افزایش امنیت کلیدهای API شرکت OpenAI است. این پلاگین با تولید دینامیک توکنهای با مدت زمان کوتاه که به صورت خودکار منقضی میشوند، به ارتقاء امنیت کمک میکند. با استفاده از این پلاگین، کاربران قادر خواهند بود تا کلیدهای API را در محیطی امن تر و کنترل شدهتر مدیریت نمایند. این فرآیند نه تنها ریسک دسترسی بیمجاز به کلیدهای طولانیمدت را کاهش میدهد بلکه به افزایش امنیت دادهها و کاربردهایی که از این کلیدها استفاده میکنند نیز کمک میکند. استفاده از توکنهای کوتاه مدت و خودکار این امکان را به ارمغان میآورد که هر گونه نفوذ احتمالی به سرعت محدود و کنترل شود. این پلاگین نوآوری مهمی در زمینه مدیریت امنیتی کلیدهای API به شمار میرود.
🟣لینک مقاله:
https://www.hashicorp.com/en/blog/managing-openai-api-keys-with-hashicorp-vault-s-dynamic-secrets-plugin?utm_source=tldrdevops
➖➖➖➖➖➖➖➖
👑 @DevOps_Labdon
Managing OpenAI API keys with HashiCorp Vault's dynamic secrets plugin (4 minute read)
🟢 خلاصه مقاله:
مقالهای که مورد بررسی قرار گرفت، به توسعه یک پلاگین جدید برای HashiCorp Vault پرداخته است که هدف آن افزایش امنیت کلیدهای API شرکت OpenAI است. این پلاگین با تولید دینامیک توکنهای با مدت زمان کوتاه که به صورت خودکار منقضی میشوند، به ارتقاء امنیت کمک میکند. با استفاده از این پلاگین، کاربران قادر خواهند بود تا کلیدهای API را در محیطی امن تر و کنترل شدهتر مدیریت نمایند. این فرآیند نه تنها ریسک دسترسی بیمجاز به کلیدهای طولانیمدت را کاهش میدهد بلکه به افزایش امنیت دادهها و کاربردهایی که از این کلیدها استفاده میکنند نیز کمک میکند. استفاده از توکنهای کوتاه مدت و خودکار این امکان را به ارمغان میآورد که هر گونه نفوذ احتمالی به سرعت محدود و کنترل شود. این پلاگین نوآوری مهمی در زمینه مدیریت امنیتی کلیدهای API به شمار میرود.
🟣لینک مقاله:
https://www.hashicorp.com/en/blog/managing-openai-api-keys-with-hashicorp-vault-s-dynamic-secrets-plugin?utm_source=tldrdevops
➖➖➖➖➖➖➖➖
👑 @DevOps_Labdon
Hashicorp
Managing OpenAI API keys with HashiCorp Vault's dynamic secrets plugin
Secure AI credentials using dynamic, short-lived tokens that automatically expire.
❤5
🔵 عنوان مقاله
Introducing go-cdc-chunkers: A New Way to Chunk and Deduplicate Everything
🟢 خلاصه مقاله:
چانکینگ مبتنی بر محتوا (CDC) روشی نوآورانه در مدیریت دادهها است که با تقسیم دادهها به چانکهایی با اندازههای متغیر مبتنی بر محتوای داده، امکان تکرارزدایی بهتری فراهم میکند. ژیل در مورد فواید این روش به تفصیل صحبت کرده و پروژه جدیدی در زبان Go را معرفی میکند که دسترسی به این الگوریتمها را ممکن میسازد. این پروژه به توسعهدهندگان امکان بهکارگیری CDC را در سیستمهای خود میدهد و انقلابی در زمینه فناوری داده به شمار میرود.
🟣لینک مقاله:
https://golangweekly.com/link/171862/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Introducing go-cdc-chunkers: A New Way to Chunk and Deduplicate Everything
🟢 خلاصه مقاله:
چانکینگ مبتنی بر محتوا (CDC) روشی نوآورانه در مدیریت دادهها است که با تقسیم دادهها به چانکهایی با اندازههای متغیر مبتنی بر محتوای داده، امکان تکرارزدایی بهتری فراهم میکند. ژیل در مورد فواید این روش به تفصیل صحبت کرده و پروژه جدیدی در زبان Go را معرفی میکند که دسترسی به این الگوریتمها را ممکن میسازد. این پروژه به توسعهدهندگان امکان بهکارگیری CDC را در سیستمهای خود میدهد و انقلابی در زمینه فناوری داده به شمار میرود.
🟣لینک مقاله:
https://golangweekly.com/link/171862/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Plakar - Effortless backup
Introducing go-cdc-chunkers: chunk and deduplicate everything
❤2👍2
Forwarded from Database Labdon
🔵 عنوان مقاله
Redka: Redis Re-Implemented with SQL
🟢 خلاصه مقاله:
این مقاله به بررسی و توضیح یک فروشگاه داده مبتنی بر زبان برنامهنویسی Go میپردازد که سازگار با API رِدیس است اما در پشت صحنه از SQL استفاده میکند تا عملیاتها را مدیریت نماید. تاکنون، این سیستم بر پایه SQLite عمل میکرده است، اما نسخه ۰.۶ پشتیبانی از Postgres را معرفی میکند. این پشتیبانی جدید امکان استفاده از قابلیتهای بیشتری را برای کاربران فراهم میآورد، زیرا Postgres یک سیستم مدیریت پایگاه دادهی قویتر نسبت به SQLite است و امکانات گستردهتری را در زمینهی مقیاسپذیری و امنیت فراهم میآورد. این تغییر به کاربران اجازه میدهد تا از یک رابط برنامهنویسی آشنا استفاده کنند، در حالی که از قدرت و انعطافپذیری SQL بهرهمند شوند.
🟣لینک مقاله:
https://postgresweekly.com/link/171909/web
➖➖➖➖➖➖➖➖
👑 @Database_Academy
Redka: Redis Re-Implemented with SQL
🟢 خلاصه مقاله:
این مقاله به بررسی و توضیح یک فروشگاه داده مبتنی بر زبان برنامهنویسی Go میپردازد که سازگار با API رِدیس است اما در پشت صحنه از SQL استفاده میکند تا عملیاتها را مدیریت نماید. تاکنون، این سیستم بر پایه SQLite عمل میکرده است، اما نسخه ۰.۶ پشتیبانی از Postgres را معرفی میکند. این پشتیبانی جدید امکان استفاده از قابلیتهای بیشتری را برای کاربران فراهم میآورد، زیرا Postgres یک سیستم مدیریت پایگاه دادهی قویتر نسبت به SQLite است و امکانات گستردهتری را در زمینهی مقیاسپذیری و امنیت فراهم میآورد. این تغییر به کاربران اجازه میدهد تا از یک رابط برنامهنویسی آشنا استفاده کنند، در حالی که از قدرت و انعطافپذیری SQL بهرهمند شوند.
🟣لینک مقاله:
https://postgresweekly.com/link/171909/web
➖➖➖➖➖➖➖➖
👑 @Database_Academy
GitHub
GitHub - nalgeon/redka: Redis re-implemented with SQL
Redis re-implemented with SQL. Contribute to nalgeon/redka development by creating an account on GitHub.
❤5
🔵 عنوان مقاله
You Don't Need testify/assert
🟢 خلاصه مقاله:
مقالهای اخیراً در مورد رویکرد نوآورانه برای تهیه تستهای محکم و پاکیزه بحث کرده است که منجر به توسعه بسته تستهای اثبات حداقلی آنتون شده است. آنتون در این رویکرد تاکید دارد که تستها باید ساده و موثر باشند و تنها به جنبههای اصلی فعالیتها پرداخته شود. این سبک تستنویسی به کاهش زمان نگهداری و بهبود قابلیت خواندگی تستها کمک میکند و به طور کلی کیفیت نرمافزار را افزایش میدهد.
🟣لینک مقاله:
https://golangweekly.com/link/171851/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
You Don't Need testify/assert
🟢 خلاصه مقاله:
مقالهای اخیراً در مورد رویکرد نوآورانه برای تهیه تستهای محکم و پاکیزه بحث کرده است که منجر به توسعه بسته تستهای اثبات حداقلی آنتون شده است. آنتون در این رویکرد تاکید دارد که تستها باید ساده و موثر باشند و تنها به جنبههای اصلی فعالیتها پرداخته شود. این سبک تستنویسی به کاهش زمان نگهداری و بهبود قابلیت خواندگی تستها کمک میکند و به طور کلی کیفیت نرمافزار را افزایش میدهد.
🟣لینک مقاله:
https://golangweekly.com/link/171851/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
antonz.org
Expressive tests without testify/assert
Equal, Err and True are quite enough.
👍3
🔵 عنوان مقاله
Fix Slow Postgres Queries with pganalyze Query Advisor
🟢 خلاصه مقاله:
در وبینار قرار داده شده در ۳۰ جولای شرکت کنید تا یاد بگیرید چگونه مشکلات متداول طرحهای پرسوجو در Postgres را کشف کنید، توصیههای قابل اجرا برای بازنویسی دریافت کنید و تاثیر آن را در یک ابزار جامع پیگیری کنید. این وبینار برای توسعهدهندگان، مدیران پایگاه داده و متخصصان فناوری اطلاعات که با Postgres کار میکنند و به دنبال بهینهسازی پرسوجوهای پایگاه دادهشان هستند، بسیار مفید خواهد بود.
🟣لینک مقاله:
https://golangweekly.com/link/171843/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Fix Slow Postgres Queries with pganalyze Query Advisor
🟢 خلاصه مقاله:
در وبینار قرار داده شده در ۳۰ جولای شرکت کنید تا یاد بگیرید چگونه مشکلات متداول طرحهای پرسوجو در Postgres را کشف کنید، توصیههای قابل اجرا برای بازنویسی دریافت کنید و تاثیر آن را در یک ابزار جامع پیگیری کنید. این وبینار برای توسعهدهندگان، مدیران پایگاه داده و متخصصان فناوری اطلاعات که با Postgres کار میکنند و به دنبال بهینهسازی پرسوجوهای پایگاه دادهشان هستند، بسیار مفید خواهد بود.
🟣لینک مقاله:
https://golangweekly.com/link/171843/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
events.zoom.us
Introducing Query Advisor: Smarter Performance Optimization for PostgreSQL
Forwarded from AI Labdon
یک پروژه شسته رُفته از پیاده سازی یک RAG پیشرفته با استفاده از llamaIndex و روی Google Cloud Vertex AI. که این موضوعات را هم پوشش میده:
- RAG design, indexing, retrieval, evaluation metrics
میتونید کامل هم روی Cloud یا لوکال اجرا کنید و تکنیکهای مختلف را تست کنید.
Github: https://github.com/GoogleCloudPlatform/generative-ai/tree/main/gemini/sample-apps/llamaindex-rag
<Mehdi Allahyari/>
- RAG design, indexing, retrieval, evaluation metrics
میتونید کامل هم روی Cloud یا لوکال اجرا کنید و تکنیکهای مختلف را تست کنید.
Github: https://github.com/GoogleCloudPlatform/generative-ai/tree/main/gemini/sample-apps/llamaindex-rag
<Mehdi Allahyari/>
GitHub
generative-ai/gemini/sample-apps/llamaindex-rag at main · GoogleCloudPlatform/generative-ai
Sample code and notebooks for Generative AI on Google Cloud, with Gemini on Vertex AI - GoogleCloudPlatform/generative-ai
Forwarded from Software Engineer Labdon
این Requirement Driven Vibe Coding چیه؟
یعنی قبلا ازینکه پروژه رو شروع کنیم٬ میشینیم قشنگ User Story و Requirementها رو می نویسیم و بر اساس اون جلو می ریم.
چندتا اسکرینشات که چجوری این Requirementهارو می نویسیم
یعنی قبلا ازینکه پروژه رو شروع کنیم٬ میشینیم قشنگ User Story و Requirementها رو می نویسیم و بر اساس اون جلو می ریم.
چندتا اسکرینشات که چجوری این Requirementهارو می نویسیم
📢 اگر تلگرام پرمیوم دارید، کانال ما رو Boost کنید ! 🚀
با Boost کردن کانال، به رشد و دیده شدن ما بیشتر کمک کنید💙
https://t.me/boost/gopher_academy
با Boost کردن کانال، به رشد و دیده شدن ما بیشتر کمک کنید💙
https://t.me/boost/gopher_academy
🔵 عنوان مقاله
oapi-codegen 2.5: Generate Go Boilerplate from OpenAPI 3 Specs
🟢 خلاصه مقاله:
نسخه جدید این ابزار و کتابخانه که به توسعهدهندگان کمک میکند تا مشخصات OpenAI را به کد Go تبدیل کنند، هم برای سرور و هم برای کلاینت مناسب است. این محصول با کاهش نیاز به نوشتن کدهای اضافی، فرآیند توسعه را سادهتر کرده و به توسعهدهندگان اجازه میدهد تا بر روی قابلیتهای اصلی تمرکز بیشتری داشته باشند. در نسخه 2.5، تغییرات و امکانات جدیدی به منظور بهبود کارایی معرفی شدهاند و همچنین اشاراتی به پشتیبانی آینده از OpenAPI 3.1 شده است که البته اکنون میتوان با استفاده از برخی ترفندها به آن دست یافت.
🟣لینک مقاله:
https://golangweekly.com/link/171859/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
oapi-codegen 2.5: Generate Go Boilerplate from OpenAPI 3 Specs
🟢 خلاصه مقاله:
نسخه جدید این ابزار و کتابخانه که به توسعهدهندگان کمک میکند تا مشخصات OpenAI را به کد Go تبدیل کنند، هم برای سرور و هم برای کلاینت مناسب است. این محصول با کاهش نیاز به نوشتن کدهای اضافی، فرآیند توسعه را سادهتر کرده و به توسعهدهندگان اجازه میدهد تا بر روی قابلیتهای اصلی تمرکز بیشتری داشته باشند. در نسخه 2.5، تغییرات و امکانات جدیدی به منظور بهبود کارایی معرفی شدهاند و همچنین اشاراتی به پشتیبانی آینده از OpenAPI 3.1 شده است که البته اکنون میتوان با استفاده از برخی ترفندها به آن دست یافت.
🟣لینک مقاله:
https://golangweekly.com/link/171859/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
GitHub
GitHub - oapi-codegen/oapi-codegen: Generate Go client and server boilerplate from OpenAPI 3 specifications
Generate Go client and server boilerplate from OpenAPI 3 specifications - oapi-codegen/oapi-codegen
Forwarded from Software Engineer Labdon
اصطلاح requirement driven vibe coding چیست؟
https://t.me/Software_Labdon/599?single
مزیت استفاده از این روش چیست؟
https://t.me/Software_Labdon/601
مفهوم feature creep یا scope creep چیست؟
https://t.me/Software_Labdon/602
مفهوم bureaucratic در توسعه نرم افزار چیست؟
https://t.me/Software_Labdon/603
➖➖➖➖➖➖➖➖
https://t.me/addlist/QtXiQlynEJwzODBk
https://t.me/Software_Labdon/599?single
مزیت استفاده از این روش چیست؟
https://t.me/Software_Labdon/601
مفهوم feature creep یا scope creep چیست؟
https://t.me/Software_Labdon/602
مفهوم bureaucratic در توسعه نرم افزار چیست؟
https://t.me/Software_Labdon/603
➖➖➖➖➖➖➖➖
https://t.me/addlist/QtXiQlynEJwzODBk
🔵 عنوان مقاله
A Deep Dive Into Deeply Recursive Go
🟢 خلاصه مقاله:
در زبان برنامهنویسی گو، عدم وجود بهینهسازی بازگشت دم (TCO) باعث افزایش خطر بروز اورفلوهای مرگبار در استک میشود. مقاله جوهو به بررسی چندین سناریوی واقعی رجوع میکند که نتیجه آنها ایجاد آسیبپذیریهای جدی شده است. همچنین راهکارهایی برای کاهش این خطرات در کدها ارائه شده و پیشنهادی برای مدیریت بهتر اورفلوها در زمان اجرا مطرح شده است تا برنامهها بتوانند از خرابیهای ناشی از اورفلو بهبود یابند.
🟣لینک مقاله:
https://golangweekly.com/link/171845/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
A Deep Dive Into Deeply Recursive Go
🟢 خلاصه مقاله:
در زبان برنامهنویسی گو، عدم وجود بهینهسازی بازگشت دم (TCO) باعث افزایش خطر بروز اورفلوهای مرگبار در استک میشود. مقاله جوهو به بررسی چندین سناریوی واقعی رجوع میکند که نتیجه آنها ایجاد آسیبپذیریهای جدی شده است. همچنین راهکارهایی برای کاهش این خطرات در کدها ارائه شده و پیشنهادی برای مدیریت بهتر اورفلوها در زمان اجرا مطرح شده است تا برنامهها بتوانند از خرابیهای ناشی از اورفلو بهبود یابند.
🟣لینک مقاله:
https://golangweekly.com/link/171845/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Mattermost.com
A deep dive into deeply recursive Go
Learn more about why developers end up with deeply recursive Go code and what can be done to mitigate stack exhaustion issues.
Gopher Academy
🔵 عنوان مقاله A Deep Dive Into Deeply Recursive Go 🟢 خلاصه مقاله: در زبان برنامهنویسی گو، عدم وجود بهینهسازی بازگشت دم (TCO) باعث افزایش خطر بروز اورفلوهای مرگبار در استک میشود. مقاله جوهو به بررسی چندین سناریوی واقعی رجوع میکند که نتیجه آنها…
در ادامه، یک خلاصهی مفید و مختصر از مقالهی «A deep dive into deeply recursive Go» نوشته Juho Forsén در بلاگ Mattermost:
---
🧠 مشکل اصلی: بازگشت پشته (stack exhaustion)
* Go بهدلیل نداشتن بهینهسازی tail call (TCO)**، در صورت استفاده از توابع بازگشتی عمیق (deep recursion)، پشته گوروتینها تا رسیدن به حد مجاز حافظه رشد میکند و در نهایت با **فاجعهی crash (stack overflow) مواجه میشویم ([Mattermost.com][1]).
* در بسیاری از موارد، بازگشت پشته منجر به خطاهای امنیتی DoS شده که در نسخههای Go قبلی با CVE ثبت شدهاند—از جمله در XML, protobuf و parser ([Mattermost.com][1]).
---
✍️ مثال واقعی: فراخوانی داخلی XML
* در Go نسخههای قبل از ۱.۱۸، تابع
* این مشکل باعث crash شدن برنامه هنگام فرایند unmarshal برای دادههای بزرگ شد.
* اشتباه مهم: نداشتن پیمایش غیر بازگشتی با ساختار صف عمق (depth via loop) تا رفع مشکل در نسخههای بعد ([Mattermost.com][1]).
---
📦 مثال واقعی: protobuf
* نسخههای قبل از ۱.۲۷.۱ در `google.golang.org/protobuf`، توابع مصرف دسته (Group) را بهصورت بازگشتی تعریف میکردند.
* کافی بود جریان دادهای بزرگ یا هدفمند ارسال شود تا پشته تخلیه و برنامه crash شود.
* راهحل: معرفی حد عمق recursion (مقدار ۱۰۰ مانند جاوا/C++) در نسخه ۱.۲۸.۰ ([Mattermost.com][1]).
---
🛡 روشهای جلوگیری
۱. بازتعریف بازگشت بازگشتی به فرم تکراری (iterative)**، یا استفاده از ساختار دادههایی مثل اسلایس برای شبیهسازی پشته روی heap.
۲. **محدودسازی عمق recursion از طریق پارامتر یا فیلد داخلی با بررسی حداکثر عمق.
۳. طراحی معماری مقاوم در برابر crash (مثل سیستمهای توزیعشده با جایگزینی فرآیندها یا کانتینرها در Kubernetes) ([Mattermost.com][1]).
---
❗️ چرا این موضوع مهم است؟
* در Go، خطای پشته قابل بازیابی (recoverable panic) وجود ندارد**؛ stack exhaustion خطایی از نوع fatal است و باعث crash فوری بدون اجرای `defer` یا امکان recovery میشود ([Mattermost.com][1]).
* این مسئله میتواند باعث **از دست رفتن دادهها، اختلال در سیستم و حتی بار امنیتی شود.
---
🧠 مشکل اصلی: بازگشت پشته (stack exhaustion)
* Go بهدلیل نداشتن بهینهسازی tail call (TCO)**، در صورت استفاده از توابع بازگشتی عمیق (deep recursion)، پشته گوروتینها تا رسیدن به حد مجاز حافظه رشد میکند و در نهایت با **فاجعهی crash (stack overflow) مواجه میشویم ([Mattermost.com][1]).
* در بسیاری از موارد، بازگشت پشته منجر به خطاهای امنیتی DoS شده که در نسخههای Go قبلی با CVE ثبت شدهاند—از جمله در XML, protobuf و parser ([Mattermost.com][1]).
---
✍️ مثال واقعی: فراخوانی داخلی XML
* در Go نسخههای قبل از ۱.۱۸، تابع
Decoder.Skip()
در هنگام رد کردن عناصر XML بهصورت بازگشتی عمل میکرد.* این مشکل باعث crash شدن برنامه هنگام فرایند unmarshal برای دادههای بزرگ شد.
* اشتباه مهم: نداشتن پیمایش غیر بازگشتی با ساختار صف عمق (depth via loop) تا رفع مشکل در نسخههای بعد ([Mattermost.com][1]).
---
📦 مثال واقعی: protobuf
* نسخههای قبل از ۱.۲۷.۱ در `google.golang.org/protobuf`، توابع مصرف دسته (Group) را بهصورت بازگشتی تعریف میکردند.
* کافی بود جریان دادهای بزرگ یا هدفمند ارسال شود تا پشته تخلیه و برنامه crash شود.
* راهحل: معرفی حد عمق recursion (مقدار ۱۰۰ مانند جاوا/C++) در نسخه ۱.۲۸.۰ ([Mattermost.com][1]).
---
🛡 روشهای جلوگیری
۱. بازتعریف بازگشت بازگشتی به فرم تکراری (iterative)**، یا استفاده از ساختار دادههایی مثل اسلایس برای شبیهسازی پشته روی heap.
۲. **محدودسازی عمق recursion از طریق پارامتر یا فیلد داخلی با بررسی حداکثر عمق.
۳. طراحی معماری مقاوم در برابر crash (مثل سیستمهای توزیعشده با جایگزینی فرآیندها یا کانتینرها در Kubernetes) ([Mattermost.com][1]).
---
❗️ چرا این موضوع مهم است؟
* در Go، خطای پشته قابل بازیابی (recoverable panic) وجود ندارد**؛ stack exhaustion خطایی از نوع fatal است و باعث crash فوری بدون اجرای `defer` یا امکان recovery میشود ([Mattermost.com][1]).
* این مسئله میتواند باعث **از دست رفتن دادهها، اختلال در سیستم و حتی بار امنیتی شود.
Forwarded from Bardia & Erfan
تحقیقات جنجالی نشون داده؛ پیک خلاقیت حوالی ۴۰سالگیه و ازونجا به بعد شکوفایی واقعی شروع میشه.
این تحقیق روی افرادی که نوبل گرفتن و مخترعان بزرگ انجام شده.
پس میشه گفت، یونگ خیلی هم الکی نمیگفت؛ زندگی واقعی از ۴۰سالگی شروع میشه، باقی در حال جستجوییم!😅
این تحقیق روی افرادی که نوبل گرفتن و مخترعان بزرگ انجام شده.
پس میشه گفت، یونگ خیلی هم الکی نمیگفت؛ زندگی واقعی از ۴۰سالگی شروع میشه، باقی در حال جستجوییم!😅
🍾5 2❤1👍1
Forwarded from Software Engineer Labdon
🔵 عنوان مقاله
The FIPS 140-3 Go Cryptographic Module (6 minute read)
🟢 خلاصه مقاله:
گو، زبان برنامهنویسی، از نسخه ۱.۲۴ پشتیبانی بومی از استاندارد FIPS ۱۴۰-۳ را در کتابخانه استاندارد و دستور `go` خود معرفی کرده است. توسعهدهندگان میتوانند با تنظیم گزینه GODEBUG `fips140=on` (از طریق متغیر محیطی یا در go.mod)، حالت FIPS ۱۴۰-۳ را فعال سازند و با استفاده از دستور `GOFIPS140=v1.0.0 go build`، نسبت به ساختن برنامههای خود با استفاده از ماژولهای رمزنگاری تأییدشده اقدام کنند. این تلفیق بومی، نیاز به راهحلهای غیر مورد پشتیبانی طرف سوم را از بین برده و تجربهای بیدرز برای توسعهدهندگان با پشتیبانی از کراسکامپایل و بدون افت کارایی ناشی از رابطهای تابع خارجی فراهم میکند.
🟣لینک مقاله:
https://go.dev/blog/fips140?utm_source=tldrinfosec
➖➖➖➖➖➖➖➖
👑 @software_Labdon
The FIPS 140-3 Go Cryptographic Module (6 minute read)
🟢 خلاصه مقاله:
گو، زبان برنامهنویسی، از نسخه ۱.۲۴ پشتیبانی بومی از استاندارد FIPS ۱۴۰-۳ را در کتابخانه استاندارد و دستور `go` خود معرفی کرده است. توسعهدهندگان میتوانند با تنظیم گزینه GODEBUG `fips140=on` (از طریق متغیر محیطی یا در go.mod)، حالت FIPS ۱۴۰-۳ را فعال سازند و با استفاده از دستور `GOFIPS140=v1.0.0 go build`، نسبت به ساختن برنامههای خود با استفاده از ماژولهای رمزنگاری تأییدشده اقدام کنند. این تلفیق بومی، نیاز به راهحلهای غیر مورد پشتیبانی طرف سوم را از بین برده و تجربهای بیدرز برای توسعهدهندگان با پشتیبانی از کراسکامپایل و بدون افت کارایی ناشی از رابطهای تابع خارجی فراهم میکند.
🟣لینک مقاله:
https://go.dev/blog/fips140?utm_source=tldrinfosec
➖➖➖➖➖➖➖➖
👑 @software_Labdon
go.dev
The FIPS 140-3 Go Cryptographic Module - The Go Programming Language
Go now has a built-in, native FIPS 140-3 compliant mode.
Software Engineer Labdon
🔵 عنوان مقاله The FIPS 140-3 Go Cryptographic Module (6 minute read) 🟢 خلاصه مقاله: گو، زبان برنامهنویسی، از نسخه ۱.۲۴ پشتیبانی بومی از استاندارد FIPS ۱۴۰-۳ را در کتابخانه استاندارد و دستور `go` خود معرفی کرده است. توسعهدهندگان میتوانند با تنظیم…
🔐ا FIPS 140 چیست و چرا مهمه؟
* استاندارد امنیتی FIPS 140‑3 برای ماژولهای رمزنگاری (مثل TLS, کلیدها، RNG) ضروریه، مخصوصاً در محیطهای قانونی و سازمانهای دولتی ([Go][1], [Medium][2]).
* تا پیش از این، توسعهدهندهها مجبور بودن از راهحلهای آزمایشی مثل BoringCrypto یا OpenSSL استفاده کنن؛ که مشکلاتی مثل پیچیدگی اجرا، نیاز به cgo و دشواری در تجربه توسعه داشت ([Go][1]).
✅ راهحل جدید: ماژول رمزنگاری FIPS داخلی در Go 1.24
* شروع از Go 1.24: ماژول بومی FIPS 140‑3 (نسخه v1.0.0) بر پایه بستههای
* دریافت گواهی CAVP شماره A6650 و حضور در لیست "Modules In Process" برای CMVP (منتظر بررسی NIST)
* بدون نیاز به cgo؛ کامپایل کاملاً بومی (pure Go)، بدون overhead یا باگهای حافظهای ناشی از FFI
⚙️ فعالسازی و نحوه کار
* برای فعالسازی: تنظیم
* حالت
* برای ساخت باینری با ماژول FIPS ثابت: استفاده از
* بررسی نسخه با دستور
🛡 امنیت بدون مصالحه
* ماژول با الگوریتمهایی مثل Hedged ECDSA (امنتر از نمونه معمولی)، و ترکیب RNG امنیتی (DRBG + داده از کرنل) مطابقت داره
* تستهای جامع Trail of Bits انجام شده و تنها نقص غیر بحرانی داشته
🌐 سازگاری و پشتیبانی گسترده پلتفرم
* آزمایش شده روی ۲۳ محیط مختلف: لینوکس (توزیعهای مختلف)، macOS، Windows، FreeBSD و بوردهایی مثل ARM, MIPS, Power و غیره ([Go][1], [Go][3]).
* تمام الگوریتمهای مجاز FIPS (امضای دیجیتال، TLS، پستکوانتوم، KDFها و غیره) پوشش داده شده ([Go][1], [Go][3]).
---
* توسعهدهندهها از کانفیگ خودکار استقبال کردند، مخصوصاً که فقط با بروزرسانی محیط Go فعال میشه.
* هنوز منتظر نمره کامل تایید CMVP هستند؛ برخی ترجیح میدن فعلاً از نسخههای جایگزین مثل OpenSSL فریورک شرکتها استفاده کنن
* استاندارد امنیتی FIPS 140‑3 برای ماژولهای رمزنگاری (مثل TLS, کلیدها، RNG) ضروریه، مخصوصاً در محیطهای قانونی و سازمانهای دولتی ([Go][1], [Medium][2]).
* تا پیش از این، توسعهدهندهها مجبور بودن از راهحلهای آزمایشی مثل BoringCrypto یا OpenSSL استفاده کنن؛ که مشکلاتی مثل پیچیدگی اجرا، نیاز به cgo و دشواری در تجربه توسعه داشت ([Go][1]).
✅ راهحل جدید: ماژول رمزنگاری FIPS داخلی در Go 1.24
* شروع از Go 1.24: ماژول بومی FIPS 140‑3 (نسخه v1.0.0) بر پایه بستههای
crypto/internal/fips140/...
استاندارد ادغام شده* دریافت گواهی CAVP شماره A6650 و حضور در لیست "Modules In Process" برای CMVP (منتظر بررسی NIST)
* بدون نیاز به cgo؛ کامپایل کاملاً بومی (pure Go)، بدون overhead یا باگهای حافظهای ناشی از FFI
⚙️ فعالسازی و نحوه کار
* برای فعالسازی: تنظیم
GODEBUG=fips140=on
یا =only
(برای حالت محدود) ([Go][3]).* حالت
only
باعث خطا یا panic روی الگوریتمهای غیرFIPS میشود.* برای ساخت باینری با ماژول FIPS ثابت: استفاده از
GOFIPS140=v1.0.0 go build
یا =inprocess
برای نسخههای آیندهای که تایید میشن ([Go][3], [Go][1]).* بررسی نسخه با دستور
go version -m
امکانپذیره.🛡 امنیت بدون مصالحه
* ماژول با الگوریتمهایی مثل Hedged ECDSA (امنتر از نمونه معمولی)، و ترکیب RNG امنیتی (DRBG + داده از کرنل) مطابقت داره
* تستهای جامع Trail of Bits انجام شده و تنها نقص غیر بحرانی داشته
🌐 سازگاری و پشتیبانی گسترده پلتفرم
* آزمایش شده روی ۲۳ محیط مختلف: لینوکس (توزیعهای مختلف)، macOS، Windows، FreeBSD و بوردهایی مثل ARM, MIPS, Power و غیره ([Go][1], [Go][3]).
* تمام الگوریتمهای مجاز FIPS (امضای دیجیتال، TLS، پستکوانتوم، KDFها و غیره) پوشش داده شده ([Go][1], [Go][3]).
---
* توسعهدهندهها از کانفیگ خودکار استقبال کردند، مخصوصاً که فقط با بروزرسانی محیط Go فعال میشه.
* هنوز منتظر نمره کامل تایید CMVP هستند؛ برخی ترجیح میدن فعلاً از نسخههای جایگزین مثل OpenSSL فریورک شرکتها استفاده کنن
Forwarded from AI Labdon
حتی خالقش هم حاضر نیست درمانش رو بسپاره به ChatGPT!
سم آلتمن، مدیرعامل OpenAI، تو یه گفتوگوی جنجالی گفت :
آلتمن همچنین تأکید کرد :
+ یه هشدار جدی هم داد : جوانها دارن زیادی به ChatGPT وابسته میشن. این اعتماد افراطی، میتونه قدرت تفکر انتقادی رو نابود کنه.»
سم آلتمن، مدیرعامل OpenAI، تو یه گفتوگوی جنجالی گفت :
«گاهی ChatGPT تشخیصهای بهتری از پزشک میده، ولی من هیچوقت بدون پزشک انسانی، سلامتیمو بهش نمیسپارم!»
آلتمن همچنین تأکید کرد :
آینده بازار کار با هوش مصنوعی هنوز مبهمه ، AI قراره مکمل انسان باشه، نه جایگزین کامل ؛ باتهای پشتیبانی مبتنی بر هوش مصنوعی؟ «فوقالعادهان» و میتونن کاملاً جای اپراتورها رو بگیرن
+ یه هشدار جدی هم داد : جوانها دارن زیادی به ChatGPT وابسته میشن. این اعتماد افراطی، میتونه قدرت تفکر انتقادی رو نابود کنه.»
👍5
🔵 عنوان مقاله
Gopher2600: An Atari VCS Emulator
🟢 خلاصه مقاله:
این مقاله به بررسی یک شبیهساز بسیار کامل میپردازد که از کنترلهای بازی، ضبط دستاوردهای بازی، و افکتهای نمایشگر CRT پشتیبانی میکند. علاوه بر این، به روزرسانیهای مهمی دریافت میکند که نمونه آن نسخه ۰.۵۰.۰ منتشر شده دیروز است. این مقاله چندین بار در طول سالها به این شبیهساز اشاره کرده و همچنان به دلیل پشتیبانی و بروزرسانیهای مداومش مورد توجه است.
🟣لینک مقاله:
https://golangweekly.com/link/172103/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Gopher2600: An Atari VCS Emulator
🟢 خلاصه مقاله:
این مقاله به بررسی یک شبیهساز بسیار کامل میپردازد که از کنترلهای بازی، ضبط دستاوردهای بازی، و افکتهای نمایشگر CRT پشتیبانی میکند. علاوه بر این، به روزرسانیهای مهمی دریافت میکند که نمونه آن نسخه ۰.۵۰.۰ منتشر شده دیروز است. این مقاله چندین بار در طول سالها به این شبیهساز اشاره کرده و همچنان به دلیل پشتیبانی و بروزرسانیهای مداومش مورد توجه است.
🟣لینک مقاله:
https://golangweekly.com/link/172103/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
GitHub
GitHub - JetSetIlly/Gopher2600: Gopher2600 is an emulator for the Atari 2600 games console
Gopher2600 is an emulator for the Atari 2600 games console - JetSetIlly/Gopher2600
🍾2